blob: fbd76a3c8557341a1db2a5fdfaf80e2bfbf6b154 [file] [log] [blame]
<!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="`MapInit` is an iterator that transforms the elements of an underlying iterator."><meta name="keywords" content="rust, rustlang, rust-lang, MapInit"><title>MapInit in rayon::iter - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" href="../../normalize.css"><link rel="stylesheet" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" href="../../ayu.css" disabled><link rel="stylesheet" href="../../dark.css" disabled><link rel="stylesheet" href="../../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../../storage.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../main.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../../favicon.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]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button><a class="sidebar-logo" href="../../rayon/index.html"><div class="logo-container"><img class="rust-logo" src="../../rust-logo.svg" alt="logo"></div></a><h2></h2></nav><nav class="sidebar"><a class="sidebar-logo" href="../../rayon/index.html"><div class="logo-container"><img class="rust-logo" src="../../rust-logo.svg" alt="logo"></div></a><h2 class="location"><a href="#">MapInit</a></h2><div class="sidebar-elems"><section><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Clone-for-MapInit%3CI%2C%20INIT%2C%20F%3E">Clone</a></li><li><a href="#impl-Debug-for-MapInit%3CI%2C%20INIT%2C%20F%3E">Debug</a></li><li><a href="#impl-IndexedParallelIterator-for-MapInit%3CI%2C%20INIT%2C%20F%3E">IndexedParallelIterator</a></li><li><a href="#impl-ParallelIterator-for-MapInit%3CI%2C%20INIT%2C%20F%3E">ParallelIterator</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-MapInit%3CI%2C%20INIT%2C%20F%3E">RefUnwindSafe</a></li><li><a href="#impl-Send-for-MapInit%3CI%2C%20INIT%2C%20F%3E">Send</a></li><li><a href="#impl-Sync-for-MapInit%3CI%2C%20INIT%2C%20F%3E">Sync</a></li><li><a href="#impl-Unpin-for-MapInit%3CI%2C%20INIT%2C%20F%3E">Unpin</a></li><li><a href="#impl-UnwindSafe-for-MapInit%3CI%2C%20INIT%2C%20F%3E">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-MapInit%3CI%2C%20INIT%2C%20F%3E">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-MapInit%3CI%2C%20INIT%2C%20F%3E">Borrow&lt;T&gt;</a></li><li><a href="#impl-BorrowMut%3CT%3E-for-MapInit%3CI%2C%20INIT%2C%20F%3E">BorrowMut&lt;T&gt;</a></li><li><a href="#impl-From%3CT%3E-for-MapInit%3CI%2C%20INIT%2C%20F%3E">From&lt;T&gt;</a></li><li><a href="#impl-Into%3CU%3E-for-MapInit%3CI%2C%20INIT%2C%20F%3E">Into&lt;U&gt;</a></li><li><a href="#impl-IntoParallelIterator-for-MapInit%3CI%2C%20INIT%2C%20F%3E">IntoParallelIterator</a></li><li><a href="#impl-Pointable-for-MapInit%3CI%2C%20INIT%2C%20F%3E">Pointable</a></li><li><a href="#impl-ToOwned-for-MapInit%3CI%2C%20INIT%2C%20F%3E">ToOwned</a></li><li><a href="#impl-TryFrom%3CU%3E-for-MapInit%3CI%2C%20INIT%2C%20F%3E">TryFrom&lt;U&gt;</a></li><li><a href="#impl-TryInto%3CU%3E-for-MapInit%3CI%2C%20INIT%2C%20F%3E">TryInto&lt;U&gt;</a></li></ul></section><h2><a href="index.html">In rayon::iter</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../wheel.svg"></a></div></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1 class="fqn">Struct <a href="../index.html">rayon</a>::<wbr><a href="index.html">iter</a>::<wbr><a class="struct" href="#">MapInit</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="srclink" href="../../src/rayon/iter/map_with.rs.html#346-350">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span></div><div class="item-decl"><pre class="rust struct"><code>pub struct MapInit&lt;I:&nbsp;<a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>, INIT, F&gt; { /* private fields */ }</code></pre></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p><code>MapInit</code> is an iterator that transforms the elements of an underlying iterator.</p>
<p>This struct is created by the <a href="trait.ParallelIterator.html#method.map_init"><code>map_init()</code></a> method on <a href="trait.ParallelIterator.html"><code>ParallelIterator</code></a></p>
</div></details><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor"></a></h2><div id="trait-implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Clone-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/map_with.rs.html#345">source</a><a href="#impl-Clone-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="anchor"></a><h3 class="code-header">impl&lt;I:&nbsp;Clone + <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>, INIT:&nbsp;Clone, F:&nbsp;Clone&gt; Clone for <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a>&lt;I, INIT, F&gt;</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/map_with.rs.html#345">source</a><a href="#method.clone" class="anchor"></a><h4 class="code-header">fn <a class="fnname">clone</a>(&amp;self) -&gt; <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a>&lt;I, INIT, F&gt;</h4></section></summary><div class='docblock'>Returns a copy of the value. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl has-srclink"><span class="since rightside" title="Stable since Rust version 1.0.0">1.0.0</span><a href="#method.clone_from" class="anchor"></a><h4 class="code-header">const fn <a class="fnname">clone_from</a>(&amp;mut self, source: &amp;Self)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a>Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Debug-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/map_with.rs.html#352-356">source</a><a href="#impl-Debug-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="anchor"></a><h3 class="code-header">impl&lt;I:&nbsp;<a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a> + Debug, INIT, F&gt; Debug for <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a>&lt;I, INIT, F&gt;</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/map_with.rs.html#353-355">source</a><a href="#method.fmt" class="anchor"></a><h4 class="code-header">fn <a class="fnname">fmt</a>(&amp;self, f: &amp;mut Formatter&lt;'_&gt;) -&gt; Result</h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a>Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-IndexedParallelIterator-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/map_with.rs.html#390-447">source</a><a href="#impl-IndexedParallelIterator-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="anchor"></a><h3 class="code-header">impl&lt;I, INIT, T, F, R&gt; <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a> for <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a>&lt;I, INIT, F&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;I: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;INIT: Fn() -&gt; T + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;F: Fn(&amp;mut T, I::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; R + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;R: Send,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.drive" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/map_with.rs.html#397-403">source</a><a href="#method.drive" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.drive" class="fnname">drive</a>&lt;C&gt;(self, consumer: C) -&gt; C::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;C: <a class="trait" href="plumbing/trait.Consumer.html" title="trait rayon::iter::plumbing::Consumer">Consumer</a>&lt;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt;,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.len" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/map_with.rs.html#405-407">source</a><a href="#method.len" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.len" class="fnname">len</a>(&amp;self) -&gt; usize</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="rustdoc-toggle method-toggle" open><summary><section id="method.with_producer" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/map_with.rs.html#409-446">source</a><a href="#method.with_producer" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.with_producer" class="fnname">with_producer</a>&lt;CB&gt;(self, callback: CB) -&gt; CB::<a class="associatedtype" href="plumbing/trait.ProducerCallback.html#associatedtype.Output" title="type rayon::iter::plumbing::ProducerCallback::Output">Output</a><span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;CB: <a class="trait" href="plumbing/trait.ProducerCallback.html" title="trait rayon::iter::plumbing::ProducerCallback">ProducerCallback</a>&lt;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt;,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.collect_into_vec" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2412-2414">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="fnname">collect_into_vec</a>(self, target: &amp;mut Vec&lt;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt;)</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="rustdoc-toggle method-toggle" open><summary><section id="method.unzip_into_vecs" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2437-2444">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="fnname">unzip_into_vecs</a>&lt;A, B&gt;(self, left: &amp;mut Vec&lt;A&gt;, right: &amp;mut Vec&lt;B&gt;)<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;Self: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>&lt;Item = (A, B)&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;A: Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;B: Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.zip" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2464-2470">source</a><a href="#method.zip" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip" class="fnname">zip</a>&lt;Z&gt;(self, zip_op: Z) -&gt; <a class="struct" href="struct.Zip.html" title="struct rayon::iter::Zip">Zip</a>&lt;Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.zip_eq" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2492-2504">source</a><a href="#method.zip_eq" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip_eq" class="fnname">zip_eq</a>&lt;Z&gt;(self, zip_op: Z) -&gt; <a class="struct" href="struct.ZipEq.html" title="struct rayon::iter::ZipEq">ZipEq</a>&lt;Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.interleave" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2520-2526">source</a><a href="#method.interleave" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave" class="fnname">interleave</a>&lt;I&gt;(self, other: I) -&gt; <a class="struct" href="struct.Interleave.html" title="struct rayon::iter::Interleave">Interleave</a>&lt;Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>&lt;Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>&lt;Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt;,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.interleave_shortest" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2539-2545">source</a><a href="#method.interleave_shortest" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave_shortest" class="fnname">interleave_shortest</a>&lt;I&gt;(self, other: I) -&gt; <a class="struct" href="struct.InterleaveShortest.html" title="struct rayon::iter::InterleaveShortest">InterleaveShortest</a>&lt;Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>&lt;Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>&lt;Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt;,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.chunks" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2568-2571">source</a><a href="#method.chunks" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.chunks" class="fnname">chunks</a>(self, chunk_size: usize) -&gt; <a class="struct" href="struct.Chunks.html" title="struct rayon::iter::Chunks">Chunks</a>&lt;Self&gt;</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="rustdoc-toggle method-toggle" open><summary><section id="method.fold_chunks" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2604-2617">source</a><a href="#method.fold_chunks" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks" class="fnname">fold_chunks</a>&lt;T, ID, F&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;self,<br>&nbsp;&nbsp;&nbsp;&nbsp;chunk_size: usize,<br>&nbsp;&nbsp;&nbsp;&nbsp;identity: ID,<br>&nbsp;&nbsp;&nbsp;&nbsp;fold_op: F<br>) -&gt; <a class="struct" href="struct.FoldChunks.html" title="struct rayon::iter::FoldChunks">FoldChunks</a>&lt;Self, ID, F&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;ID: Fn() -&gt; T + Send + Sync,<br>&nbsp;&nbsp;&nbsp;&nbsp;F: Fn(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; T + Send + Sync,<br>&nbsp;&nbsp;&nbsp;&nbsp;T: Send,</span></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="std::iter::Iterator#method.fold"><code>fold()</code></a> on
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks">Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.fold_chunks_with" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2642-2654">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="fnname">fold_chunks_with</a>&lt;T, F&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;self,<br>&nbsp;&nbsp;&nbsp;&nbsp;chunk_size: usize,<br>&nbsp;&nbsp;&nbsp;&nbsp;init: T,<br>&nbsp;&nbsp;&nbsp;&nbsp;fold_op: F<br>) -&gt; <a class="struct" href="struct.FoldChunksWith.html" title="struct rayon::iter::FoldChunksWith">FoldChunksWith</a>&lt;Self, T, F&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: Send + Clone,<br>&nbsp;&nbsp;&nbsp;&nbsp;F: Fn(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; T + Send + Sync,</span></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="std::iter::Iterator#method.fold"><code>fold()</code></a> on
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with">Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.partial_cmp" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2710-2732">source</a><a href="#method.partial_cmp" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.partial_cmp" class="fnname">partial_cmp</a>&lt;I&gt;(self, other: I) -&gt; Option&lt;Ordering&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: PartialOrd&lt;I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>&gt;,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.eq" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2736-2749">source</a><a href="#method.eq" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.eq" class="fnname">eq</a>&lt;I&gt;(self, other: I) -&gt; bool<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: PartialEq&lt;I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>&gt;,</span></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
are equal to those of another <a href="trait.IndexedParallelIterator.html#method.eq">Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2753-2760">source</a><a href="#method.ne" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ne" class="fnname">ne</a>&lt;I&gt;(self, other: I) -&gt; bool<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: PartialEq&lt;I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>&gt;,</span></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
are unequal to those of another <a href="trait.IndexedParallelIterator.html#method.ne">Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.lt" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2764-2771">source</a><a href="#method.lt" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.lt" class="fnname">lt</a>&lt;I&gt;(self, other: I) -&gt; bool<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: PartialOrd&lt;I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>&gt;,</span></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
are lexicographically less than those of another. <a href="trait.IndexedParallelIterator.html#method.lt">Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.le" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2775-2783">source</a><a href="#method.le" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.le" class="fnname">le</a>&lt;I&gt;(self, other: I) -&gt; bool<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: PartialOrd&lt;I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>&gt;,</span></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
are less or equal to those of another. <a href="trait.IndexedParallelIterator.html#method.le">Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.gt" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2787-2794">source</a><a href="#method.gt" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.gt" class="fnname">gt</a>&lt;I&gt;(self, other: I) -&gt; bool<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: PartialOrd&lt;I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>&gt;,</span></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
are lexicographically greater than those of another. <a href="trait.IndexedParallelIterator.html#method.gt">Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.ge" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2798-2806">source</a><a href="#method.ge" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ge" class="fnname">ge</a>&lt;I&gt;(self, other: I) -&gt; bool<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: PartialOrd&lt;I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>&gt;,</span></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
are less or equal to those of another. <a href="trait.IndexedParallelIterator.html#method.ge">Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.enumerate" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2823-2825">source</a><a href="#method.enumerate" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.enumerate" class="fnname">enumerate</a>(self) -&gt; <a class="struct" href="struct.Enumerate.html" title="struct rayon::iter::Enumerate">Enumerate</a>&lt;Self&gt;</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="rustdoc-toggle method-toggle" open><summary><section id="method.step_by" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2842-2844">source</a><a href="#method.step_by" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.step_by" class="fnname">step_by</a>(self, step: usize) -&gt; <a class="struct" href="struct.StepBy.html" title="struct rayon::iter::StepBy">StepBy</a>&lt;Self&gt;</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="rustdoc-toggle method-toggle" open><summary><section id="method.skip" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2860-2862">source</a><a href="#method.skip" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.skip" class="fnname">skip</a>(self, n: usize) -&gt; <a class="struct" href="struct.Skip.html" title="struct rayon::iter::Skip">Skip</a>&lt;Self&gt;</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="rustdoc-toggle method-toggle" open><summary><section id="method.take" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2878-2880">source</a><a href="#method.take" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.take" class="fnname">take</a>(self, n: usize) -&gt; <a class="struct" href="struct.Take.html" title="struct rayon::iter::Take">Take</a>&lt;Self&gt;</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="rustdoc-toggle method-toggle" open><summary><section id="method.position_any" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2900-2911">source</a><a href="#method.position_any" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_any" class="fnname">position_any</a>&lt;P&gt;(self, predicate: P) -&gt; Option&lt;usize&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;P: Fn(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; bool + Sync + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.position_first" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2937-2948">source</a><a href="#method.position_first" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_first" class="fnname">position_first</a>&lt;P&gt;(self, predicate: P) -&gt; Option&lt;usize&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;P: Fn(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; bool + Sync + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.position_last" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2974-2985">source</a><a href="#method.position_last" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_last" class="fnname">position_last</a>&lt;P&gt;(self, predicate: P) -&gt; Option&lt;usize&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;P: Fn(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; bool + Sync + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.positions" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#3017-3022">source</a><a href="#method.positions" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.positions" class="fnname">positions</a>&lt;P&gt;(self, predicate: P) -&gt; <a class="struct" href="struct.Positions.html" title="struct rayon::iter::Positions">Positions</a>&lt;Self, P&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;P: Fn(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; bool + Sync + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.rev" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#3039-3041">source</a><a href="#method.rev" class="anchor"></a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.rev" class="fnname">rev</a>(self) -&gt; <a class="struct" href="struct.Rev.html" title="struct rayon::iter::Rev">Rev</a>&lt;Self&gt;</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="rustdoc-toggle method-toggle" open><summary><section id="method.with_min_len" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#3065-3067">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="fnname">with_min_len</a>(self, min: usize) -&gt; <a class="struct" href="struct.MinLen.html" title="struct rayon::iter::MinLen">MinLen</a>&lt;Self&gt;</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="rustdoc-toggle method-toggle" open><summary><section id="method.with_max_len" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#3093-3095">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="fnname">with_max_len</a>(self, max: usize) -&gt; <a class="struct" href="struct.MaxLen.html" title="struct rayon::iter::MaxLen">MaxLen</a>&lt;Self&gt;</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="rustdoc-toggle implementors-toggle" open><summary><section id="impl-ParallelIterator-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/map_with.rs.html#368-388">source</a><a href="#impl-ParallelIterator-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="anchor"></a><h3 class="code-header">impl&lt;I, INIT, T, F, R&gt; <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a> for <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a>&lt;I, INIT, F&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;I: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>,<br>&nbsp;&nbsp;&nbsp;&nbsp;INIT: Fn() -&gt; T + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;F: Fn(&amp;mut T, I::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; R + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;R: Send,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Item" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Item" class="anchor"></a><h4 class="code-header">type <a href="trait.ParallelIterator.html#associatedtype.Item" class="associatedtype">Item</a> = R</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. <a href="trait.ParallelIterator.html#associatedtype.Item">Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.drive_unindexed" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/map_with.rs.html#377-383">source</a><a href="#method.drive_unindexed" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#tymethod.drive_unindexed" class="fnname">drive_unindexed</a>&lt;C&gt;(self, consumer: C) -&gt; C::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;C: <a class="trait" href="plumbing/trait.UnindexedConsumer.html" title="trait rayon::iter::plumbing::UnindexedConsumer">UnindexedConsumer</a>&lt;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt;,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.opt_len" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/map_with.rs.html#385-387">source</a><a href="#method.opt_len" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.opt_len" class="fnname">opt_len</a>(&amp;self) -&gt; Option&lt;usize&gt;</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="rustdoc-toggle method-toggle" open><summary><section id="method.for_each" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#375-380">source</a><a href="#method.for_each" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each" class="fnname">for_each</a>&lt;OP&gt;(self, op: OP)<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;OP: Fn(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + Sync + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.for_each_with" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#405-411">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="fnname">for_each_with</a>&lt;OP, T&gt;(self, init: T, op: OP)<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;OP: Fn(&amp;mut T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;T: Send + Clone,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.for_each_init" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#439-445">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="fnname">for_each_init</a>&lt;OP, INIT, T&gt;(self, init: INIT, op: OP)<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;OP: Fn(&amp;mut T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;INIT: Fn() -&gt; T + Sync + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.try_for_each" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#467-477">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="fnname">try_for_each</a>&lt;OP, R&gt;(self, op: OP) -&gt; R<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;OP: Fn(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; R + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;R: Try&lt;Output = ()&gt; + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.try_for_each_with" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#506-517">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="fnname">try_for_each_with</a>&lt;OP, T, R&gt;(self, init: T, op: OP) -&gt; R<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;OP: Fn(&amp;mut T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; R + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;T: Send + Clone,<br>&nbsp;&nbsp;&nbsp;&nbsp;R: Try&lt;Output = ()&gt; + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.try_for_each_init" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#548-559">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="fnname">try_for_each_init</a>&lt;OP, INIT, T, R&gt;(self, init: INIT, op: OP) -&gt; R<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;OP: Fn(&amp;mut T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; R + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;INIT: Fn() -&gt; T + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;R: Try&lt;Output = ()&gt; + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.count" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#572-578">source</a><a href="#method.count" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.count" class="fnname">count</a>(self) -&gt; usize</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="rustdoc-toggle method-toggle" open><summary><section id="method.map" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#594-600">source</a><a href="#method.map" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map" class="fnname">map</a>&lt;F, R&gt;(self, map_op: F) -&gt; <a class="struct" href="struct.Map.html" title="struct rayon::iter::Map">Map</a>&lt;Self, F&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;F: Fn(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; R + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;R: Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.map_with" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#631-638">source</a><a href="#method.map_with" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_with" class="fnname">map_with</a>&lt;F, T, R&gt;(self, init: T, map_op: F) -&gt; <a class="struct" href="struct.MapWith.html" title="struct rayon::iter::MapWith">MapWith</a>&lt;Self, T, F&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;F: Fn(&amp;mut T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; R + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;T: Send + Clone,<br>&nbsp;&nbsp;&nbsp;&nbsp;R: Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.map_init" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#668-675">source</a><a href="#method.map_init" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_init" class="fnname">map_init</a>&lt;F, INIT, T, R&gt;(self, init: INIT, map_op: F) -&gt; <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a>&lt;Self, INIT, F&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;F: Fn(&amp;mut T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; R + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;INIT: Fn() -&gt; T + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;R: Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.cloned" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#698-704">source</a><a href="#method.cloned" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.cloned" class="fnname">cloned</a>&lt;'a, T&gt;(self) -&gt; <a class="struct" href="struct.Cloned.html" title="struct rayon::iter::Cloned">Cloned</a>&lt;Self&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: 'a + Clone + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>&lt;Item = &amp;'a T&gt;,</span></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>&amp;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="rustdoc-toggle method-toggle" open><summary><section id="method.copied" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#727-733">source</a><a href="#method.copied" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.copied" class="fnname">copied</a>&lt;'a, T&gt;(self) -&gt; <a class="struct" href="struct.Copied.html" title="struct rayon::iter::Copied">Copied</a>&lt;Self&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: 'a + Copy + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>&lt;Item = &amp;'a T&gt;,</span></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>&amp;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="rustdoc-toggle method-toggle" open><summary><section id="method.inspect" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#764-769">source</a><a href="#method.inspect" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.inspect" class="fnname">inspect</a>&lt;OP&gt;(self, inspect_op: OP) -&gt; <a class="struct" href="struct.Inspect.html" title="struct rayon::iter::Inspect">Inspect</a>&lt;Self, OP&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;OP: Fn(&amp;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + Sync + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.update" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#784-789">source</a><a href="#method.update" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.update" class="fnname">update</a>&lt;F&gt;(self, update_op: F) -&gt; <a class="struct" href="struct.Update.html" title="struct rayon::iter::Update">Update</a>&lt;Self, F&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;F: Fn(&amp;mut Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + Sync + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.filter" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#805-810">source</a><a href="#method.filter" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter" class="fnname">filter</a>&lt;P&gt;(self, filter_op: P) -&gt; <a class="struct" href="struct.Filter.html" title="struct rayon::iter::Filter">Filter</a>&lt;Self, P&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;P: Fn(&amp;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; bool + Sync + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.filter_map" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#830-836">source</a><a href="#method.filter_map" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter_map" class="fnname">filter_map</a>&lt;P, R&gt;(self, filter_op: P) -&gt; <a class="struct" href="struct.FilterMap.html" title="struct rayon::iter::FilterMap">FilterMap</a>&lt;Self, P&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;P: Fn(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; Option&lt;R&gt; + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;R: Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.flat_map" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#856-862">source</a><a href="#method.flat_map" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map" class="fnname">flat_map</a>&lt;F, PI&gt;(self, map_op: F) -&gt; <a class="struct" href="struct.FlatMap.html" title="struct rayon::iter::FlatMap">FlatMap</a>&lt;Self, F&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;F: Fn(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; PI + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;PI: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.flat_map_iter" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#902-909">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="fnname">flat_map_iter</a>&lt;F, SI&gt;(self, map_op: F) -&gt; <a class="struct" href="struct.FlatMapIter.html" title="struct rayon::iter::FlatMapIter">FlatMapIter</a>&lt;Self, F&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;F: Fn(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; SI + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;SI: IntoIterator,<br>&nbsp;&nbsp;&nbsp;&nbsp;SI::Item: Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.reduce" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#986-992">source</a><a href="#method.reduce" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce" class="fnname">reduce</a>&lt;OP, ID&gt;(self, identity: ID, op: OP) -&gt; Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a><span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;OP: Fn(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>) -&gt; Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;ID: Fn() -&gt; Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + Sync + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.reduce_with" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1020-1041">source</a><a href="#method.reduce_with" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce_with" class="fnname">reduce_with</a>&lt;OP&gt;(self, op: OP) -&gt; Option&lt;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;OP: Fn(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>) -&gt; Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + Sync + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.fold" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1259-1266">source</a><a href="#method.fold" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold" class="fnname">fold</a>&lt;T, ID, F&gt;(self, identity: ID, fold_op: F) -&gt; <a class="struct" href="struct.Fold.html" title="struct rayon::iter::Fold">Fold</a>&lt;Self, ID, F&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;F: Fn(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; T + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;ID: Fn() -&gt; T + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;T: Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.fold_with" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1287-1293">source</a><a href="#method.fold_with" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold_with" class="fnname">fold_with</a>&lt;F, T&gt;(self, init: T, fold_op: F) -&gt; <a class="struct" href="struct.FoldWith.html" title="struct rayon::iter::FoldWith">FoldWith</a>&lt;Self, T, F&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;F: Fn(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; T + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;T: Send + Clone,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.try_fold" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1320-1327">source</a><a href="#method.try_fold" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold" class="fnname">try_fold</a>&lt;T, R, ID, F&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;self,<br>&nbsp;&nbsp;&nbsp;&nbsp;identity: ID,<br>&nbsp;&nbsp;&nbsp;&nbsp;fold_op: F<br>) -&gt; <a class="struct" href="struct.TryFold.html" title="struct rayon::iter::TryFold">TryFold</a>&lt;Self, R, ID, F&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;F: Fn(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; R + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;ID: Fn() -&gt; T + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;R: Try&lt;Output = T&gt; + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.try_fold_with" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1347-1354">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="fnname">try_fold_with</a>&lt;F, T, R&gt;(self, init: T, fold_op: F) -&gt; <a class="struct" href="struct.TryFoldWith.html" title="struct rayon::iter::TryFoldWith">TryFoldWith</a>&lt;Self, R, F&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;F: Fn(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; R + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;R: Try&lt;Output = T&gt; + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;T: Clone + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.sum" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1380-1385">source</a><a href="#method.sum" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.sum" class="fnname">sum</a>&lt;S&gt;(self) -&gt; S<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;S: Send + Sum&lt;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt; + Sum&lt;S&gt;,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.product" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1413-1418">source</a><a href="#method.product" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.product" class="fnname">product</a>&lt;P&gt;(self) -&gt; P<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;P: Send + Product&lt;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt; + Product&lt;P&gt;,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.min_by" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1467-1479">source</a><a href="#method.min_by" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by" class="fnname">min_by</a>&lt;F&gt;(self, f: F) -&gt; Option&lt;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;F: Sync + Send + Fn(&amp;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &amp;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; Ordering,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.min_by_key" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1498-1516">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="fnname">min_by_key</a>&lt;K, F&gt;(self, f: F) -&gt; Option&lt;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;K: Ord + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;F: Sync + Send + Fn(&amp;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; K,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.max_by" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1565-1577">source</a><a href="#method.max_by" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by" class="fnname">max_by</a>&lt;F&gt;(self, f: F) -&gt; Option&lt;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;F: Sync + Send + Fn(&amp;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &amp;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; Ordering,</span></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(min)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by">Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.max_by_key" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1596-1614">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="fnname">max_by_key</a>&lt;K, F&gt;(self, f: F) -&gt; Option&lt;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;K: Ord + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;F: Sync + Send + Fn(&amp;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; K,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.chain" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1632-1637">source</a><a href="#method.chain" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.chain" class="fnname">chain</a>&lt;C&gt;(self, chain: C) -&gt; <a class="struct" href="struct.Chain.html" title="struct rayon::iter::Chain">Chain</a>&lt;Self, C::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;C: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>&lt;Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt;,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.find_any" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1662-1667">source</a><a href="#method.find_any" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_any" class="fnname">find_any</a>&lt;P&gt;(self, predicate: P) -&gt; Option&lt;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;P: Fn(&amp;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; bool + Sync + Send,</span></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/std/iter/trait.Iterator.html#method.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="rustdoc-toggle method-toggle" open><summary><section id="method.find_first" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1692-1697">source</a><a href="#method.find_first" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_first" class="fnname">find_first</a>&lt;P&gt;(self, predicate: P) -&gt; Option&lt;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;P: Fn(&amp;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; bool + Sync + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.find_last" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1721-1726">source</a><a href="#method.find_last" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_last" class="fnname">find_last</a>&lt;P&gt;(self, predicate: P) -&gt; Option&lt;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;P: Fn(&amp;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; bool + Sync + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.find_map_any" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1751-1760">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="fnname">find_map_any</a>&lt;P, R&gt;(self, predicate: P) -&gt; Option&lt;R&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;P: Fn(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; Option&lt;R&gt; + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;R: Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.find_map_first" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1785-1794">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="fnname">find_map_first</a>&lt;P, R&gt;(self, predicate: P) -&gt; Option&lt;R&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;P: Fn(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; Option&lt;R&gt; + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;R: Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.find_map_last" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1819-1828">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="fnname">find_map_last</a>&lt;P, R&gt;(self, predicate: P) -&gt; Option&lt;R&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;P: Fn(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; Option&lt;R&gt; + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;R: Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.any" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1857-1862">source</a><a href="#method.any" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.any" class="fnname">any</a>&lt;P&gt;(self, predicate: P) -&gt; bool<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;P: Fn(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; bool + Sync + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.all" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1879-1889">source</a><a href="#method.all" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.all" class="fnname">all</a>&lt;P&gt;(self, predicate: P) -&gt; bool<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;P: Fn(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; bool + Sync + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.while_some" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1913-1919">source</a><a href="#method.while_some" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.while_some" class="fnname">while_some</a>&lt;T&gt;(self) -&gt; <a class="struct" href="struct.WhileSome.html" title="struct rayon::iter::WhileSome">WhileSome</a>&lt;Self&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>&lt;Item = Option&lt;T&gt;&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;T: Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.panic_fuse" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#1951-1953">source</a><a href="#method.panic_fuse" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.panic_fuse" class="fnname">panic_fuse</a>(self) -&gt; <a class="struct" href="struct.PanicFuse.html" title="struct rayon::iter::PanicFuse">PanicFuse</a>&lt;Self&gt;</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="rustdoc-toggle method-toggle" open><summary><section id="method.collect" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2052-2057">source</a><a href="#method.collect" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect" class="fnname">collect</a>&lt;C&gt;(self) -&gt; C<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;C: <a class="trait" href="trait.FromParallelIterator.html" title="trait rayon::iter::FromParallelIterator">FromParallelIterator</a>&lt;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt;,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.unzip" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2093-2102">source</a><a href="#method.unzip" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.unzip" class="fnname">unzip</a>&lt;A, B, FromA, FromB&gt;(self) -&gt; (FromA, FromB)<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>&lt;Item = (A, B)&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;FromA: Default + Send + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a>&lt;A&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;FromB: Default + Send + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a>&lt;B&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;A: Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;B: Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.partition" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2123-2130">source</a><a href="#method.partition" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition" class="fnname">partition</a>&lt;A, B, P&gt;(self, predicate: P) -&gt; (A, B)<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;A: Default + Send + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a>&lt;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;B: Default + Send + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a>&lt;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;P: Fn(&amp;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; bool + Sync + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.partition_map" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2175-2184">source</a><a href="#method.partition_map" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition_map" class="fnname">partition_map</a>&lt;A, B, P, L, R&gt;(self, predicate: P) -&gt; (A, B)<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;A: Default + Send + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a>&lt;L&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;B: Default + Send + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a>&lt;R&gt;,<br>&nbsp;&nbsp;&nbsp;&nbsp;P: Fn(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; <a class="enum" href="enum.Either.html" title="enum rayon::iter::Either">Either</a>&lt;L, R&gt; + Sync + Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;L: Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;R: Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.take_any" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2226-2228">source</a><a href="#method.take_any" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any" class="fnname">take_any</a>(self, n: usize) -&gt; <a class="struct" href="struct.TakeAny.html" title="struct rayon::iter::TakeAny">TakeAny</a>&lt;Self&gt;</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="rustdoc-toggle method-toggle" open><summary><section id="method.skip_any" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2251-2253">source</a><a href="#method.skip_any" class="anchor"></a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any" class="fnname">skip_any</a>(self, n: usize) -&gt; <a class="struct" href="struct.SkipAny.html" title="struct rayon::iter::SkipAny">SkipAny</a>&lt;Self&gt;</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="rustdoc-toggle method-toggle" open><summary><section id="method.take_any_while" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2301-2306">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="fnname">take_any_while</a>&lt;P&gt;(self, predicate: P) -&gt; <a class="struct" href="struct.TakeAnyWhile.html" title="struct rayon::iter::TakeAnyWhile">TakeAnyWhile</a>&lt;Self, P&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;P: Fn(&amp;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; bool + Sync + Send,</span></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="rustdoc-toggle method-toggle" open><summary><section id="method.skip_any_while" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2335-2340">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="fnname">skip_any_while</a>&lt;P&gt;(self, predicate: P) -&gt; <a class="struct" href="struct.SkipAnyWhile.html" title="struct rayon::iter::SkipAnyWhile">SkipAnyWhile</a>&lt;Self, P&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;P: Fn(&amp;Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -&gt; bool + Sync + Send,</span></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></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor"></a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="impl has-srclink"><a href="#impl-RefUnwindSafe-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="anchor"></a><h3 class="code-header">impl&lt;I, INIT, F&gt; RefUnwindSafe for <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a>&lt;I, INIT, F&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;F: RefUnwindSafe,<br>&nbsp;&nbsp;&nbsp;&nbsp;I: RefUnwindSafe,<br>&nbsp;&nbsp;&nbsp;&nbsp;INIT: RefUnwindSafe,</span></h3></section><section id="impl-Send-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="impl has-srclink"><a href="#impl-Send-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="anchor"></a><h3 class="code-header">impl&lt;I, INIT, F&gt; Send for <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a>&lt;I, INIT, F&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;F: Send,<br>&nbsp;&nbsp;&nbsp;&nbsp;INIT: Send,</span></h3></section><section id="impl-Sync-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="impl has-srclink"><a href="#impl-Sync-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="anchor"></a><h3 class="code-header">impl&lt;I, INIT, F&gt; Sync for <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a>&lt;I, INIT, F&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;F: Sync,<br>&nbsp;&nbsp;&nbsp;&nbsp;I: Sync,<br>&nbsp;&nbsp;&nbsp;&nbsp;INIT: Sync,</span></h3></section><section id="impl-Unpin-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="impl has-srclink"><a href="#impl-Unpin-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="anchor"></a><h3 class="code-header">impl&lt;I, INIT, F&gt; Unpin for <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a>&lt;I, INIT, F&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;F: Unpin,<br>&nbsp;&nbsp;&nbsp;&nbsp;I: Unpin,<br>&nbsp;&nbsp;&nbsp;&nbsp;INIT: Unpin,</span></h3></section><section id="impl-UnwindSafe-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="impl has-srclink"><a href="#impl-UnwindSafe-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="anchor"></a><h3 class="code-header">impl&lt;I, INIT, F&gt; UnwindSafe for <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a>&lt;I, INIT, F&gt;<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;F: UnwindSafe,<br>&nbsp;&nbsp;&nbsp;&nbsp;I: UnwindSafe,<br>&nbsp;&nbsp;&nbsp;&nbsp;INIT: UnwindSafe,</span></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor"></a></h2><div id="blanket-implementations-list"><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Any-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="impl has-srclink"><a href="#impl-Any-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="anchor"></a><h3 class="code-header">impl&lt;T&gt; Any for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: 'static + ?Sized,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl has-srclink"><a href="#method.type_id" class="anchor"></a><h4 class="code-header">fn <a class="fnname">type_id</a>(&amp;self) -&gt; TypeId</h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a>Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="impl has-srclink"><a href="#impl-Borrow%3CT%3E-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="anchor"></a><h3 class="code-header">impl&lt;T&gt; Borrow&lt;T&gt; for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?Sized,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl has-srclink"><span class="since rightside" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/91522" title="Tracking issue for const_borrow">unstable</a></span><a href="#method.borrow" class="anchor"></a><h4 class="code-header">fn <a class="fnname">borrow</a>(&amp;self) -&gt; &amp;T</h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a>Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="impl has-srclink"><a href="#impl-BorrowMut%3CT%3E-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="anchor"></a><h3 class="code-header">impl&lt;T&gt; BorrowMut&lt;T&gt; for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?Sized,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl has-srclink"><span class="since rightside" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/91522" title="Tracking issue for const_borrow">unstable</a></span><a href="#method.borrow_mut" class="anchor"></a><h4 class="code-header">fn <a class="fnname">borrow_mut</a>(&amp;mut self) -&gt; &amp;mut T</h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a>Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="impl has-srclink"><a href="#impl-From%3CT%3E-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="anchor"></a><h3 class="code-header">impl&lt;T&gt; From&lt;T&gt; for T</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.from" class="method trait-impl has-srclink"><span class="since rightside" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/88674" title="Tracking issue for const_convert">unstable</a></span><a href="#method.from" class="anchor"></a><h4 class="code-header">fn <a class="fnname">from</a>(t: T) -&gt; T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="impl has-srclink"><a href="#impl-Into%3CU%3E-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="anchor"></a><h3 class="code-header">impl&lt;T, U&gt; Into&lt;U&gt; for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: From&lt;T&gt;,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.into" class="method trait-impl has-srclink"><span class="since rightside" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/88674" title="Tracking issue for const_convert">unstable</a></span><a href="#method.into" class="anchor"></a><h4 class="code-header">fn <a class="fnname">into</a>(self) -&gt; 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>[From]&lt;T&gt; for U</code> chooses to do.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-IntoParallelIterator-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2377-2384">source</a><a href="#impl-IntoParallelIterator-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="anchor"></a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a> for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Iter" class="associatedtype trait-impl has-srclink"><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="rustdoc-toggle" open><summary><section id="associatedtype.Item-1" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Item-1" class="anchor"></a><h4 class="code-header">type <a href="trait.IntoParallelIterator.html#associatedtype.Item" class="associatedtype">Item</a> = &lt;T as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>&gt;::<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="rustdoc-toggle method-toggle" open><summary><section id="method.into_par_iter" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/rayon/iter/mod.rs.html#2381-2383">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="fnname">into_par_iter</a>(self) -&gt; 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="rustdoc-toggle implementors-toggle"><summary><section id="impl-Pointable-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/crossbeam_epoch/atomic.rs.html#194">source</a><a href="#impl-Pointable-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="anchor"></a><h3 class="code-header">impl&lt;T&gt; <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="rustdoc-toggle" open><summary><section id="associatedconstant.ALIGN" class="associatedconstant trait-impl has-srclink"><a class="srclink 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>: usize = mem::align_of::&lt;T&gt;()</h4></section></summary><div class='docblock'>The alignment of pointer.</div></details><details class="rustdoc-toggle" open><summary><section id="associatedtype.Init" class="associatedtype trait-impl has-srclink"><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="rustdoc-toggle method-toggle" open><summary><section id="method.init" class="method trait-impl has-srclink"><a class="srclink 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="fnname">init</a>(init: &lt;T as <a class="trait" href="../../crossbeam_epoch/atomic/trait.Pointable.html" title="trait crossbeam_epoch::atomic::Pointable">Pointable</a>&gt;::<a class="associatedtype" href="../../crossbeam_epoch/atomic/trait.Pointable.html#associatedtype.Init" title="type crossbeam_epoch::atomic::Pointable::Init">Init</a>) -&gt; usize</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="rustdoc-toggle method-toggle" open><summary><section id="method.deref" class="method trait-impl has-srclink"><a class="srclink 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="fnname">deref</a>&lt;'a&gt;(ptr: usize) -&gt; &amp;'a T</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="rustdoc-toggle method-toggle" open><summary><section id="method.deref_mut" class="method trait-impl has-srclink"><a class="srclink 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="fnname">deref_mut</a>&lt;'a&gt;(ptr: usize) -&gt; &amp;'a mut T</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="rustdoc-toggle method-toggle" open><summary><section id="method.drop" class="method trait-impl has-srclink"><a class="srclink 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="fnname">drop</a>(ptr: usize)</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="rustdoc-toggle implementors-toggle"><summary><section id="impl-ToOwned-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="impl has-srclink"><a href="#impl-ToOwned-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="anchor"></a><h3 class="code-header">impl&lt;T&gt; ToOwned for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: Clone,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Owned" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Owned" class="anchor"></a><h4 class="code-header">type <a class="associatedtype">Owned</a> = T</h4></section></summary><div class='docblock'>The resulting type after obtaining ownership.</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.to_owned" class="method trait-impl has-srclink"><a href="#method.to_owned" class="anchor"></a><h4 class="code-header">fn <a class="fnname">to_owned</a>(&amp;self) -&gt; T</h4></section></summary><div class='docblock'>Creates owned data from borrowed data, usually by cloning. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.clone_into" class="method trait-impl has-srclink"><a href="#method.clone_into" class="anchor"></a><h4 class="code-header">fn <a class="fnname">clone_into</a>(&amp;self, target: &amp;mut T)</h4></section></summary><div class='docblock'>Uses borrowed data to replace owned data, usually by cloning. <a>Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="impl has-srclink"><a href="#impl-TryFrom%3CU%3E-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="anchor"></a><h3 class="code-header">impl&lt;T, U&gt; TryFrom&lt;U&gt; for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: Into&lt;T&gt;,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Error-1" class="anchor"></a><h4 class="code-header">type <a class="associatedtype">Error</a> = Infallible</h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl has-srclink"><span class="since rightside" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/88674" title="Tracking issue for const_convert">unstable</a></span><a href="#method.try_from" class="anchor"></a><h4 class="code-header">fn <a class="fnname">try_from</a>(value: U) -&gt; Result&lt;T, &lt;T as TryFrom&lt;U&gt;&gt;::Error&gt;</h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="impl has-srclink"><a href="#impl-TryInto%3CU%3E-for-MapInit%3CI%2C%20INIT%2C%20F%3E" class="anchor"></a><h3 class="code-header">impl&lt;T, U&gt; TryInto&lt;U&gt; for T<span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: TryFrom&lt;T&gt;,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Error" class="anchor"></a><h4 class="code-header">type <a class="associatedtype">Error</a> = &lt;U as TryFrom&lt;T&gt;&gt;::Error</h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl has-srclink"><span class="since rightside" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/88674" title="Tracking issue for const_convert">unstable</a></span><a href="#method.try_into" class="anchor"></a><h4 class="code-header">fn <a class="fnname">try_into</a>(self) -&gt; Result&lt;U, &lt;U as TryFrom&lt;T&gt;&gt;::Error&gt;</h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details></div></section></div></main><div id="rustdoc-vars" data-root-path="../../" data-current-crate="rayon" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.66.0-nightly (5c8bff74b 2022-10-21)" ></div></body></html>