| <!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="Wrapper around iterators which allows them to be treated as a stream. Returned by [`IteratorStream::new`]."><meta name="keywords" content="rust, rustlang, rust-lang, IteratorStream"><title>IteratorStream in combine::stream - 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">☰</button><a class="sidebar-logo" href="../../combine/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="../../combine/index.html"><div class="logo-container"><img class="rust-logo" src="../../rust-logo.svg" alt="logo"></div></a><h2 class="location"><a href="#">IteratorStream</a></h2><div class="sidebar-elems"><section><h3><a href="#implementations">Methods</a></h3><ul class="block"><li><a href="#method.new">new</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block"><li><a href="#impl-Clone-for-IteratorStream%3CInput%3E">Clone</a></li><li><a href="#impl-Copy-for-IteratorStream%3CInput%3E">Copy</a></li><li><a href="#impl-Debug-for-IteratorStream%3CInput%3E">Debug</a></li><li><a href="#impl-DefaultPositioned-for-IteratorStream%3CT%3E">DefaultPositioned</a></li><li><a href="#impl-Iterator-for-IteratorStream%3CInput%3E">Iterator</a></li><li><a href="#impl-ResetStream-for-IteratorStream%3CT%3E">ResetStream</a></li><li><a href="#impl-StreamOnce-for-IteratorStream%3CInput%3E">StreamOnce</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block"><li><a href="#impl-RefUnwindSafe-for-IteratorStream%3CInput%3E">RefUnwindSafe</a></li><li><a href="#impl-Send-for-IteratorStream%3CInput%3E">Send</a></li><li><a href="#impl-Sync-for-IteratorStream%3CInput%3E">Sync</a></li><li><a href="#impl-Unpin-for-IteratorStream%3CInput%3E">Unpin</a></li><li><a href="#impl-UnwindSafe-for-IteratorStream%3CInput%3E">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block"><li><a href="#impl-Any-for-IteratorStream%3CInput%3E">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-IteratorStream%3CInput%3E">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-IteratorStream%3CInput%3E">BorrowMut<T></a></li><li><a href="#impl-From%3CT%3E-for-IteratorStream%3CInput%3E">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-IteratorStream%3CInput%3E">Into<U></a></li><li><a href="#impl-IntoIterator-for-IteratorStream%3CInput%3E">IntoIterator</a></li><li><a href="#impl-ToOwned-for-IteratorStream%3CInput%3E">ToOwned</a></li><li><a href="#impl-TryFrom%3CU%3E-for-IteratorStream%3CInput%3E">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-IteratorStream%3CInput%3E">TryInto<U></a></li></ul></section><h2><a href="index.html">In combine::stream</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">combine</a>::<wbr><a href="index.html">stream</a>::<wbr><a class="struct" href="#">IteratorStream</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/combine/stream/mod.rs.html#1172">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">−</span>]</a></span></div><div class="item-decl"><pre class="rust struct"><code>pub struct IteratorStream<Input>(_);</code></pre></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Wrapper around iterators which allows them to be treated as a stream. |
| Returned by <a href="struct.IteratorStream.html#method.new" title="IteratorStream::new"><code>IteratorStream::new</code></a>.</p> |
| </div></details><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor"></a></h2><div id="implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-IteratorStream%3CInput%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/combine/stream/mod.rs.html#1174-1188">source</a><a href="#impl-IteratorStream%3CInput%3E" class="anchor"></a><h3 class="code-header">impl<Input> <a class="struct" href="struct.IteratorStream.html" title="struct combine::stream::IteratorStream">IteratorStream</a><Input><span class="where fmt-newline">where<br> Input: Iterator,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.new" class="method has-srclink"><a class="srclink rightside" href="../../src/combine/stream/mod.rs.html#1182-1187">source</a><h4 class="code-header">pub fn <a href="#method.new" class="fnname">new</a><T>(iter: T) -> <a class="struct" href="struct.IteratorStream.html" title="struct combine::stream::IteratorStream">IteratorStream</a><Input><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for <a class="struct" href="struct.IteratorStream.html" title="struct combine::stream::IteratorStream">IteratorStream</a><Input></span><code class="content"><span class="where fmt-newline">impl<Input> Iterator for <a class="struct" href="struct.IteratorStream.html" title="struct combine::stream::IteratorStream">IteratorStream</a><Input><span class="where fmt-newline">where<br> Input: Iterator,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = Input::Item;</span></code></span></span></span></span><span class="where fmt-newline">where<br> T: IntoIterator<IntoIter = Input, Item = Input::Item>,</span></h4></section></summary><div class="docblock"><p>Converts an <code>Iterator</code> into a stream.</p> |
| <p>NOTE: This type do not implement <code>Positioned</code> and <code>Clone</code> and must be wrapped with types |
| such as <code>BufferedStreamRef</code> and <code>State</code> to become a <code>Stream</code> which can be parsed</p> |
| </div></details></div></details></div><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-IteratorStream%3CInput%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/combine/stream/mod.rs.html#1171">source</a><a href="#impl-Clone-for-IteratorStream%3CInput%3E" class="anchor"></a><h3 class="code-header">impl<Input: Clone> Clone for <a class="struct" href="struct.IteratorStream.html" title="struct combine::stream::IteratorStream">IteratorStream</a><Input></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/combine/stream/mod.rs.html#1171">source</a><a href="#method.clone" class="anchor"></a><h4 class="code-header">fn <a class="fnname">clone</a>(&self) -> <a class="struct" href="struct.IteratorStream.html" title="struct combine::stream::IteratorStream">IteratorStream</a><Input><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for <a class="struct" href="struct.IteratorStream.html" title="struct combine::stream::IteratorStream">IteratorStream</a><Input></span><code class="content"><span class="where fmt-newline">impl<Input> Iterator for <a class="struct" href="struct.IteratorStream.html" title="struct combine::stream::IteratorStream">IteratorStream</a><Input><span class="where fmt-newline">where<br> Input: Iterator,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = Input::Item;</span></code></span></span></span></span></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>(&mut self, source: &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-IteratorStream%3CInput%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/combine/stream/mod.rs.html#1171">source</a><a href="#impl-Debug-for-IteratorStream%3CInput%3E" class="anchor"></a><h3 class="code-header">impl<Input: Debug> Debug for <a class="struct" href="struct.IteratorStream.html" title="struct combine::stream::IteratorStream">IteratorStream</a><Input></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/combine/stream/mod.rs.html#1171">source</a><a href="#method.fmt" class="anchor"></a><h4 class="code-header">fn <a class="fnname">fmt</a>(&self, f: &mut Formatter<'_>) -> 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-DefaultPositioned-for-IteratorStream%3CT%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/combine/stream/position.rs.html#52-54">source</a><a href="#impl-DefaultPositioned-for-IteratorStream%3CT%3E" class="anchor"></a><h3 class="code-header">impl<T> <a class="trait" href="position/trait.DefaultPositioned.html" title="trait combine::stream::position::DefaultPositioned">DefaultPositioned</a> for <a class="struct" href="struct.IteratorStream.html" title="struct combine::stream::IteratorStream">IteratorStream</a><T></h3></section></summary><div class="impl-items"><section id="associatedtype.Positioner" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Positioner" class="anchor"></a><h4 class="code-header">type <a href="position/trait.DefaultPositioned.html#associatedtype.Positioner" class="associatedtype">Positioner</a> = <a class="struct" href="position/struct.IndexPositioner.html" title="struct combine::stream::position::IndexPositioner">IndexPositioner</a></h4></section></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Iterator-for-IteratorStream%3CInput%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/combine/stream/mod.rs.html#1190-1198">source</a><a href="#impl-Iterator-for-IteratorStream%3CInput%3E" class="anchor"></a><h3 class="code-header">impl<Input> Iterator for <a class="struct" href="struct.IteratorStream.html" title="struct combine::stream::IteratorStream">IteratorStream</a><Input><span class="where fmt-newline">where<br> Input: Iterator,</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 class="associatedtype">Item</a> = <Input as Iterator>::Item</h4></section></summary><div class='docblock'>The type of the elements being iterated over.</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.next" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/combine/stream/mod.rs.html#1195-1197">source</a><a href="#method.next" class="anchor"></a><h4 class="code-header">fn <a class="fnname">next</a>(&mut self) -> Option<Input::Item></h4></section></summary><div class='docblock'>Advances the iterator and returns the next value. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.next_chunk" class="method trait-impl has-srclink"><a href="#method.next_chunk" class="anchor"></a><h4 class="code-header">fn <a class="fnname">next_chunk</a><const N: usize>(<br> &mut self<br>) -> Result<[Self::Item; N], IntoIter<Self::Item, N>></h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>iter_next_chunk</code>)</span></div></span><div class='docblock'>Advances the iterator and returns an array containing the next <code>N</code> values. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.size_hint" 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.size_hint" class="anchor"></a><h4 class="code-header">fn <a class="fnname">size_hint</a>(&self) -> (usize, Option<usize>)</h4></section></summary><div class='docblock'>Returns the bounds on the remaining length of the iterator. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.count" 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.count" class="anchor"></a><h4 class="code-header">fn <a class="fnname">count</a>(self) -> usize</h4></section></summary><div class='docblock'>Consumes the iterator, counting the number of iterations and returning it. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.last" 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.last" class="anchor"></a><h4 class="code-header">fn <a class="fnname">last</a>(self) -> Option<Self::Item></h4></section></summary><div class='docblock'>Consumes the iterator, returning the last element. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.advance_by" class="method trait-impl has-srclink"><a href="#method.advance_by" class="anchor"></a><h4 class="code-header">fn <a class="fnname">advance_by</a>(&mut self, n: usize) -> Result<(), usize></h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>iter_advance_by</code>)</span></div></span><div class='docblock'>Advances the iterator by <code>n</code> elements. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.nth" 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.nth" class="anchor"></a><h4 class="code-header">fn <a class="fnname">nth</a>(&mut self, n: usize) -> Option<Self::Item></h4></section></summary><div class='docblock'>Returns the <code>n</code>th element of the iterator. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.step_by" class="method trait-impl has-srclink"><span class="since rightside" title="Stable since Rust version 1.28.0">1.28.0</span><a href="#method.step_by" class="anchor"></a><h4 class="code-header">fn <a class="fnname">step_by</a>(self, step: usize) -> StepBy<Self><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for StepBy<I></span><code class="content"><span class="where fmt-newline">impl<I> Iterator for StepBy<I><span class="where fmt-newline">where<br> I: Iterator,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = <I as Iterator>::Item;</span></code></span></span></span></span></h4></section></summary><div class='docblock'>Creates an iterator starting at the same point, but stepping by |
| the given amount at each iteration. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.chain" 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.chain" class="anchor"></a><h4 class="code-header">fn <a class="fnname">chain</a><U>(self, other: U) -> Chain<Self, <U as IntoIterator>::IntoIter><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for Chain<A, B></span><code class="content"><span class="where fmt-newline">impl<A, B> Iterator for Chain<A, B><span class="where fmt-newline">where<br> A: Iterator,<br> B: Iterator<Item = <A as Iterator>::Item>,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = <A as Iterator>::Item;</span></code></span></span></span></span><span class="where fmt-newline">where<br> U: IntoIterator<Item = Self::Item>,</span></h4></section></summary><div class='docblock'>Takes two iterators and creates a new iterator over both in sequence. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.zip" 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.zip" class="anchor"></a><h4 class="code-header">fn <a class="fnname">zip</a><U>(self, other: U) -> Zip<Self, <U as IntoIterator>::IntoIter><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for Zip<A, B></span><code class="content"><span class="where fmt-newline">impl<A, B> Iterator for Zip<A, B><span class="where fmt-newline">where<br> A: Iterator,<br> B: Iterator,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = (<A as Iterator>::Item, <B as Iterator>::Item);</span></code></span></span></span></span><span class="where fmt-newline">where<br> U: IntoIterator,</span></h4></section></summary><div class='docblock'>‘Zips up’ two iterators into a single iterator of pairs. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.intersperse_with" class="method trait-impl has-srclink"><a href="#method.intersperse_with" class="anchor"></a><h4 class="code-header">fn <a class="fnname">intersperse_with</a><G>(self, separator: G) -> IntersperseWith<Self, G><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for IntersperseWith<I, G></span><code class="content"><span class="where fmt-newline">impl<I, G> Iterator for IntersperseWith<I, G><span class="where fmt-newline">where<br> I: Iterator,<br> G: FnMut() -> <I as Iterator>::Item,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = <I as Iterator>::Item;</span></code></span></span></span></span><span class="where fmt-newline">where<br> G: FnMut() -> Self::Item,</span></h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>iter_intersperse</code>)</span></div></span><div class='docblock'>Creates a new iterator which places an item generated by <code>separator</code> |
| between adjacent items of the original iterator. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.map" 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.map" class="anchor"></a><h4 class="code-header">fn <a class="fnname">map</a><B, F>(self, f: F) -> Map<Self, F><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for Map<I, F></span><code class="content"><span class="where fmt-newline">impl<B, I, F> Iterator for Map<I, F><span class="where fmt-newline">where<br> I: Iterator,<br> F: FnMut(<I as Iterator>::Item) -> B,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = B;</span></code></span></span></span></span><span class="where fmt-newline">where<br> F: FnMut(Self::Item) -> B,</span></h4></section></summary><div class='docblock'>Takes a closure and creates an iterator which calls that closure on each |
| element. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.for_each" class="method trait-impl has-srclink"><span class="since rightside" title="Stable since Rust version 1.21.0">1.21.0</span><a href="#method.for_each" class="anchor"></a><h4 class="code-header">fn <a class="fnname">for_each</a><F>(self, f: F)<span class="where fmt-newline">where<br> F: FnMut(Self::Item),</span></h4></section></summary><div class='docblock'>Calls a closure on each element of an iterator. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.filter" 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.filter" class="anchor"></a><h4 class="code-header">fn <a class="fnname">filter</a><P>(self, predicate: P) -> Filter<Self, P><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for Filter<I, P></span><code class="content"><span class="where fmt-newline">impl<I, P> Iterator for Filter<I, P><span class="where fmt-newline">where<br> I: Iterator,<br> P: FnMut(&<I as Iterator>::Item) -> bool,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = <I as Iterator>::Item;</span></code></span></span></span></span><span class="where fmt-newline">where<br> P: FnMut(&Self::Item) -> bool,</span></h4></section></summary><div class='docblock'>Creates an iterator which uses a closure to determine if an element |
| should be yielded. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.filter_map" 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.filter_map" class="anchor"></a><h4 class="code-header">fn <a class="fnname">filter_map</a><B, F>(self, f: F) -> FilterMap<Self, F><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for FilterMap<I, F></span><code class="content"><span class="where fmt-newline">impl<B, I, F> Iterator for FilterMap<I, F><span class="where fmt-newline">where<br> I: Iterator,<br> F: FnMut(<I as Iterator>::Item) -> Option<B>,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = B;</span></code></span></span></span></span><span class="where fmt-newline">where<br> F: FnMut(Self::Item) -> Option<B>,</span></h4></section></summary><div class='docblock'>Creates an iterator that both filters and maps. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.enumerate" 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.enumerate" class="anchor"></a><h4 class="code-header">fn <a class="fnname">enumerate</a>(self) -> Enumerate<Self><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for Enumerate<I></span><code class="content"><span class="where fmt-newline">impl<I> Iterator for Enumerate<I><span class="where fmt-newline">where<br> I: Iterator,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = (usize, <I as Iterator>::Item);</span></code></span></span></span></span></h4></section></summary><div class='docblock'>Creates an iterator which gives the current iteration count as well as |
| the next value. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.peekable" 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.peekable" class="anchor"></a><h4 class="code-header">fn <a class="fnname">peekable</a>(self) -> Peekable<Self><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for Peekable<I></span><code class="content"><span class="where fmt-newline">impl<I> Iterator for Peekable<I><span class="where fmt-newline">where<br> I: Iterator,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = <I as Iterator>::Item;</span></code></span></span></span></span></h4></section></summary><div class='docblock'>Creates an iterator which can use the <a href="Peekable::peek"><code>peek</code></a> and <a href="Peekable::peek_mut"><code>peek_mut</code></a> methods |
| to look at the next element of the iterator without consuming it. See |
| their documentation for more information. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.skip_while" 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.skip_while" class="anchor"></a><h4 class="code-header">fn <a class="fnname">skip_while</a><P>(self, predicate: P) -> SkipWhile<Self, P><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for SkipWhile<I, P></span><code class="content"><span class="where fmt-newline">impl<I, P> Iterator for SkipWhile<I, P><span class="where fmt-newline">where<br> I: Iterator,<br> P: FnMut(&<I as Iterator>::Item) -> bool,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = <I as Iterator>::Item;</span></code></span></span></span></span><span class="where fmt-newline">where<br> P: FnMut(&Self::Item) -> bool,</span></h4></section></summary><div class='docblock'>Creates an iterator that <a href="Iterator::skip"><code>skip</code></a>s elements based on a predicate. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.take_while" 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.take_while" class="anchor"></a><h4 class="code-header">fn <a class="fnname">take_while</a><P>(self, predicate: P) -> TakeWhile<Self, P><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for TakeWhile<I, P></span><code class="content"><span class="where fmt-newline">impl<I, P> Iterator for TakeWhile<I, P><span class="where fmt-newline">where<br> I: Iterator,<br> P: FnMut(&<I as Iterator>::Item) -> bool,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = <I as Iterator>::Item;</span></code></span></span></span></span><span class="where fmt-newline">where<br> P: FnMut(&Self::Item) -> bool,</span></h4></section></summary><div class='docblock'>Creates an iterator that yields elements based on a predicate. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.map_while" class="method trait-impl has-srclink"><span class="since rightside" title="Stable since Rust version 1.57.0">1.57.0</span><a href="#method.map_while" class="anchor"></a><h4 class="code-header">fn <a class="fnname">map_while</a><B, P>(self, predicate: P) -> MapWhile<Self, P><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for MapWhile<I, P></span><code class="content"><span class="where fmt-newline">impl<B, I, P> Iterator for MapWhile<I, P><span class="where fmt-newline">where<br> I: Iterator,<br> P: FnMut(<I as Iterator>::Item) -> Option<B>,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = B;</span></code></span></span></span></span><span class="where fmt-newline">where<br> P: FnMut(Self::Item) -> Option<B>,</span></h4></section></summary><div class='docblock'>Creates an iterator that both yields elements based on a predicate and maps. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.skip" 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.skip" class="anchor"></a><h4 class="code-header">fn <a class="fnname">skip</a>(self, n: usize) -> Skip<Self><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for Skip<I></span><code class="content"><span class="where fmt-newline">impl<I> Iterator for Skip<I><span class="where fmt-newline">where<br> I: Iterator,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = <I as Iterator>::Item;</span></code></span></span></span></span></h4></section></summary><div class='docblock'>Creates an iterator that skips the first <code>n</code> elements. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.take" 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.take" class="anchor"></a><h4 class="code-header">fn <a class="fnname">take</a>(self, n: usize) -> Take<Self><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for Take<I></span><code class="content"><span class="where fmt-newline">impl<I> Iterator for Take<I><span class="where fmt-newline">where<br> I: Iterator,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = <I as Iterator>::Item;</span></code></span></span></span></span></h4></section></summary><div class='docblock'>Creates an iterator that yields the first <code>n</code> elements, or fewer |
| if the underlying iterator ends sooner. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.scan" 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.scan" class="anchor"></a><h4 class="code-header">fn <a class="fnname">scan</a><St, B, F>(self, initial_state: St, f: F) -> Scan<Self, St, F><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for Scan<I, St, F></span><code class="content"><span class="where fmt-newline">impl<B, I, St, F> Iterator for Scan<I, St, F><span class="where fmt-newline">where<br> I: Iterator,<br> F: FnMut(&mut St, <I as Iterator>::Item) -> Option<B>,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = B;</span></code></span></span></span></span><span class="where fmt-newline">where<br> F: FnMut(&mut St, Self::Item) -> Option<B>,</span></h4></section></summary><div class='docblock'>An iterator adapter similar to <a href="Iterator::fold"><code>fold</code></a> that holds internal state and |
| produces a new iterator. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.flat_map" 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.flat_map" class="anchor"></a><h4 class="code-header">fn <a class="fnname">flat_map</a><U, F>(self, f: F) -> FlatMap<Self, U, F><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for FlatMap<I, U, F></span><code class="content"><span class="where fmt-newline">impl<I, U, F> Iterator for FlatMap<I, U, F><span class="where fmt-newline">where<br> I: Iterator,<br> U: IntoIterator,<br> F: FnMut(<I as Iterator>::Item) -> U,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = <U as IntoIterator>::Item;</span></code></span></span></span></span><span class="where fmt-newline">where<br> U: IntoIterator,<br> F: FnMut(Self::Item) -> U,</span></h4></section></summary><div class='docblock'>Creates an iterator that works like map, but flattens nested structure. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.fuse" 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.fuse" class="anchor"></a><h4 class="code-header">fn <a class="fnname">fuse</a>(self) -> Fuse<Self><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for Fuse<I></span><code class="content"><span class="where fmt-newline">impl<I> Iterator for Fuse<I><span class="where fmt-newline">where<br> I: Iterator,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = <I as Iterator>::Item;</span></code></span></span></span></span></h4></section></summary><div class='docblock'>Creates an iterator which ends after the first [<code>None</code>]. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.inspect" 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.inspect" class="anchor"></a><h4 class="code-header">fn <a class="fnname">inspect</a><F>(self, f: F) -> Inspect<Self, F><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for Inspect<I, F></span><code class="content"><span class="where fmt-newline">impl<I, F> Iterator for Inspect<I, F><span class="where fmt-newline">where<br> I: Iterator,<br> F: FnMut(&<I as Iterator>::Item),</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = <I as Iterator>::Item;</span></code></span></span></span></span><span class="where fmt-newline">where<br> F: FnMut(&Self::Item),</span></h4></section></summary><div class='docblock'>Does something with each element of an iterator, passing the value on. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.by_ref" 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.by_ref" class="anchor"></a><h4 class="code-header">fn <a class="fnname">by_ref</a>(&mut self) -> &mut Self</h4></section></summary><div class='docblock'>Borrows an iterator, rather than consuming it. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.collect" 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.collect" class="anchor"></a><h4 class="code-header">fn <a class="fnname">collect</a><B>(self) -> B<span class="where fmt-newline">where<br> B: FromIterator<Self::Item>,</span></h4></section></summary><div class='docblock'>Transforms an iterator into a collection. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.collect_into" class="method trait-impl has-srclink"><a href="#method.collect_into" class="anchor"></a><h4 class="code-header">fn <a class="fnname">collect_into</a><E>(self, collection: &mut E) -> &mut E<span class="where fmt-newline">where<br> E: Extend<Self::Item>,</span></h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>iter_collect_into</code>)</span></div></span><div class='docblock'>Collects all the items from an iterator into a collection. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.partition" 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.partition" class="anchor"></a><h4 class="code-header">fn <a class="fnname">partition</a><B, F>(self, f: F) -> (B, B)<span class="where fmt-newline">where<br> B: Default + Extend<Self::Item>,<br> F: FnMut(&Self::Item) -> bool,</span></h4></section></summary><div class='docblock'>Consumes an iterator, creating two collections from it. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.is_partitioned" class="method trait-impl has-srclink"><a href="#method.is_partitioned" class="anchor"></a><h4 class="code-header">fn <a class="fnname">is_partitioned</a><P>(self, predicate: P) -> bool<span class="where fmt-newline">where<br> P: FnMut(Self::Item) -> bool,</span></h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>iter_is_partitioned</code>)</span></div></span><div class='docblock'>Checks if the elements of this iterator are partitioned according to the given predicate, |
| such that all those that return <code>true</code> precede all those that return <code>false</code>. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.try_fold" class="method trait-impl has-srclink"><span class="since rightside" title="Stable since Rust version 1.27.0">1.27.0</span><a href="#method.try_fold" class="anchor"></a><h4 class="code-header">fn <a class="fnname">try_fold</a><B, F, R>(&mut self, init: B, f: F) -> R<span class="where fmt-newline">where<br> F: FnMut(B, Self::Item) -> R,<br> R: Try<Output = B>,</span></h4></section></summary><div class='docblock'>An iterator method that applies a function as long as it returns |
| successfully, producing a single, final value. <a>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"><span class="since rightside" title="Stable since Rust version 1.27.0">1.27.0</span><a href="#method.try_for_each" class="anchor"></a><h4 class="code-header">fn <a class="fnname">try_for_each</a><F, R>(&mut self, f: F) -> R<span class="where fmt-newline">where<br> F: FnMut(Self::Item) -> R,<br> R: Try<Output = ()>,</span></h4></section></summary><div class='docblock'>An iterator method that applies a fallible function to each item in the |
| iterator, stopping at the first error and returning that error. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.fold" 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.fold" class="anchor"></a><h4 class="code-header">fn <a class="fnname">fold</a><B, F>(self, init: B, f: F) -> B<span class="where fmt-newline">where<br> F: FnMut(B, Self::Item) -> B,</span></h4></section></summary><div class='docblock'>Folds every element into an accumulator by applying an operation, |
| returning the final result. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.reduce" class="method trait-impl has-srclink"><span class="since rightside" title="Stable since Rust version 1.51.0">1.51.0</span><a href="#method.reduce" class="anchor"></a><h4 class="code-header">fn <a class="fnname">reduce</a><F>(self, f: F) -> Option<Self::Item><span class="where fmt-newline">where<br> F: FnMut(Self::Item, Self::Item) -> Self::Item,</span></h4></section></summary><div class='docblock'>Reduces the elements to a single one, by repeatedly applying a reducing |
| operation. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.try_reduce" class="method trait-impl has-srclink"><a href="#method.try_reduce" class="anchor"></a><h4 class="code-header">fn <a class="fnname">try_reduce</a><F, R>(<br> &mut self,<br> f: F<br>) -> <<R as Try>::Residual as Residual<Option<<R as Try>::Output>>>::TryType<span class="where fmt-newline">where<br> F: FnMut(Self::Item, Self::Item) -> R,<br> R: Try<Output = Self::Item>,<br> <R as Try>::Residual: Residual<Option<Self::Item>>,</span></h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>iterator_try_reduce</code>)</span></div></span><div class='docblock'>Reduces the elements to a single one by repeatedly applying a reducing operation. If the |
| closure returns a failure, the failure is propagated back to the caller immediately. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.all" 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.all" class="anchor"></a><h4 class="code-header">fn <a class="fnname">all</a><F>(&mut self, f: F) -> bool<span class="where fmt-newline">where<br> F: FnMut(Self::Item) -> bool,</span></h4></section></summary><div class='docblock'>Tests if every element of the iterator matches a predicate. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.any" 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.any" class="anchor"></a><h4 class="code-header">fn <a class="fnname">any</a><F>(&mut self, f: F) -> bool<span class="where fmt-newline">where<br> F: FnMut(Self::Item) -> bool,</span></h4></section></summary><div class='docblock'>Tests if any element of the iterator matches a predicate. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.find" 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.find" class="anchor"></a><h4 class="code-header">fn <a class="fnname">find</a><P>(&mut self, predicate: P) -> Option<Self::Item><span class="where fmt-newline">where<br> P: FnMut(&Self::Item) -> bool,</span></h4></section></summary><div class='docblock'>Searches for an element of an iterator that satisfies a predicate. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.find_map" class="method trait-impl has-srclink"><span class="since rightside" title="Stable since Rust version 1.30.0">1.30.0</span><a href="#method.find_map" class="anchor"></a><h4 class="code-header">fn <a class="fnname">find_map</a><B, F>(&mut self, f: F) -> Option<B><span class="where fmt-newline">where<br> F: FnMut(Self::Item) -> Option<B>,</span></h4></section></summary><div class='docblock'>Applies function to the elements of iterator and returns |
| the first non-none result. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.try_find" class="method trait-impl has-srclink"><a href="#method.try_find" class="anchor"></a><h4 class="code-header">fn <a class="fnname">try_find</a><F, R>(<br> &mut self,<br> f: F<br>) -> <<R as Try>::Residual as Residual<Option<Self::Item>>>::TryType<span class="where fmt-newline">where<br> F: FnMut(&Self::Item) -> R,<br> R: Try<Output = bool>,<br> <R as Try>::Residual: Residual<Option<Self::Item>>,</span></h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>try_find</code>)</span></div></span><div class='docblock'>Applies function to the elements of iterator and returns |
| the first true result or the first error. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.position" 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.position" class="anchor"></a><h4 class="code-header">fn <a class="fnname">position</a><P>(&mut self, predicate: P) -> Option<usize><span class="where fmt-newline">where<br> P: FnMut(Self::Item) -> bool,</span></h4></section></summary><div class='docblock'>Searches for an element in an iterator, returning its index. <a>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"><span class="since rightside" title="Stable since Rust version 1.6.0">1.6.0</span><a href="#method.max_by_key" class="anchor"></a><h4 class="code-header">fn <a class="fnname">max_by_key</a><B, F>(self, f: F) -> Option<Self::Item><span class="where fmt-newline">where<br> B: Ord,<br> F: FnMut(&Self::Item) -> B,</span></h4></section></summary><div class='docblock'>Returns the element that gives the maximum value from the |
| specified function. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.max_by" class="method trait-impl has-srclink"><span class="since rightside" title="Stable since Rust version 1.15.0">1.15.0</span><a href="#method.max_by" class="anchor"></a><h4 class="code-header">fn <a class="fnname">max_by</a><F>(self, compare: F) -> Option<Self::Item><span class="where fmt-newline">where<br> F: FnMut(&Self::Item, &Self::Item) -> Ordering,</span></h4></section></summary><div class='docblock'>Returns the element that gives the maximum value with respect to the |
| specified comparison function. <a>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"><span class="since rightside" title="Stable since Rust version 1.6.0">1.6.0</span><a href="#method.min_by_key" class="anchor"></a><h4 class="code-header">fn <a class="fnname">min_by_key</a><B, F>(self, f: F) -> Option<Self::Item><span class="where fmt-newline">where<br> B: Ord,<br> F: FnMut(&Self::Item) -> B,</span></h4></section></summary><div class='docblock'>Returns the element that gives the minimum value from the |
| specified function. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.min_by" class="method trait-impl has-srclink"><span class="since rightside" title="Stable since Rust version 1.15.0">1.15.0</span><a href="#method.min_by" class="anchor"></a><h4 class="code-header">fn <a class="fnname">min_by</a><F>(self, compare: F) -> Option<Self::Item><span class="where fmt-newline">where<br> F: FnMut(&Self::Item, &Self::Item) -> Ordering,</span></h4></section></summary><div class='docblock'>Returns the element that gives the minimum value with respect to the |
| specified comparison function. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.unzip" 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.unzip" class="anchor"></a><h4 class="code-header">fn <a class="fnname">unzip</a><A, B, FromA, FromB>(self) -> (FromA, FromB)<span class="where fmt-newline">where<br> FromA: Default + Extend<A>,<br> FromB: Default + Extend<B>,<br> Self: Iterator<Item = (A, B)>,</span></h4></section></summary><div class='docblock'>Converts an iterator of pairs into a pair of containers. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.copied" class="method trait-impl has-srclink"><span class="since rightside" title="Stable since Rust version 1.36.0">1.36.0</span><a href="#method.copied" class="anchor"></a><h4 class="code-header">fn <a class="fnname">copied</a><'a, T>(self) -> Copied<Self><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for Copied<I></span><code class="content"><span class="where fmt-newline">impl<'a, I, T> Iterator for Copied<I><span class="where fmt-newline">where<br> T: 'a + Copy,<br> I: Iterator<Item = &'a T>,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = T;</span></code></span></span></span></span><span class="where fmt-newline">where<br> T: 'a + Copy,<br> Self: Iterator<Item = &'a T>,</span></h4></section></summary><div class='docblock'>Creates an iterator which copies all of its elements. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.cloned" 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.cloned" class="anchor"></a><h4 class="code-header">fn <a class="fnname">cloned</a><'a, T>(self) -> Cloned<Self><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for Cloned<I></span><code class="content"><span class="where fmt-newline">impl<'a, I, T> Iterator for Cloned<I><span class="where fmt-newline">where<br> T: 'a + Clone,<br> I: Iterator<Item = &'a T>,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = T;</span></code></span></span></span></span><span class="where fmt-newline">where<br> T: 'a + Clone,<br> Self: Iterator<Item = &'a T>,</span></h4></section></summary><div class='docblock'>Creates an iterator which <a href="Clone::clone"><code>clone</code></a>s all of its elements. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.array_chunks" class="method trait-impl has-srclink"><a href="#method.array_chunks" class="anchor"></a><h4 class="code-header">fn <a class="fnname">array_chunks</a><const N: usize>(self) -> ArrayChunks<Self, N><span class="notable-traits"><span class="notable-traits-tooltip">ⓘ<span class="notable-traits-tooltiptext"><span class="docblock"><span class="notable">Notable traits for ArrayChunks<I, N></span><code class="content"><span class="where fmt-newline">impl<I, const N: usize> Iterator for ArrayChunks<I, N><span class="where fmt-newline">where<br> I: Iterator,</span></span><span class="where fmt-newline"> type <a class="associatedtype">Item</a> = [<I as Iterator>::Item; N];</span></code></span></span></span></span></h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>iter_array_chunks</code>)</span></div></span><div class='docblock'>Returns an iterator over <code>N</code> elements of the iterator at a time. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.sum" class="method trait-impl has-srclink"><span class="since rightside" title="Stable since Rust version 1.11.0">1.11.0</span><a href="#method.sum" class="anchor"></a><h4 class="code-header">fn <a class="fnname">sum</a><S>(self) -> S<span class="where fmt-newline">where<br> S: Sum<Self::Item>,</span></h4></section></summary><div class='docblock'>Sums the elements of an iterator. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.product" class="method trait-impl has-srclink"><span class="since rightside" title="Stable since Rust version 1.11.0">1.11.0</span><a href="#method.product" class="anchor"></a><h4 class="code-header">fn <a class="fnname">product</a><P>(self) -> P<span class="where fmt-newline">where<br> P: Product<Self::Item>,</span></h4></section></summary><div class='docblock'>Iterates over the entire iterator, multiplying all the elements <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.cmp_by" class="method trait-impl has-srclink"><a href="#method.cmp_by" class="anchor"></a><h4 class="code-header">fn <a class="fnname">cmp_by</a><I, F>(self, other: I, cmp: F) -> Ordering<span class="where fmt-newline">where<br> I: IntoIterator,<br> F: FnMut(Self::Item, <I as IntoIterator>::Item) -> Ordering,</span></h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>iter_order_by</code>)</span></div></span><div class='docblock'><a href="Ord#lexicographical-comparison">Lexicographically</a> compares the elements of this [<code>Iterator</code>] with those |
| of another with respect to the specified comparison function. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.partial_cmp" class="method trait-impl has-srclink"><span class="since rightside" title="Stable since Rust version 1.5.0">1.5.0</span><a href="#method.partial_cmp" class="anchor"></a><h4 class="code-header">fn <a class="fnname">partial_cmp</a><I>(self, other: I) -> Option<Ordering><span class="where fmt-newline">where<br> I: IntoIterator,<br> Self::Item: PartialOrd<<I as IntoIterator>::Item>,</span></h4></section></summary><div class='docblock'><a href="Ord#lexicographical-comparison">Lexicographically</a> compares the elements of this [<code>Iterator</code>] with those |
| of another. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.partial_cmp_by" class="method trait-impl has-srclink"><a href="#method.partial_cmp_by" class="anchor"></a><h4 class="code-header">fn <a class="fnname">partial_cmp_by</a><I, F>(self, other: I, partial_cmp: F) -> Option<Ordering><span class="where fmt-newline">where<br> I: IntoIterator,<br> F: FnMut(Self::Item, <I as IntoIterator>::Item) -> Option<Ordering>,</span></h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>iter_order_by</code>)</span></div></span><div class='docblock'><a href="Ord#lexicographical-comparison">Lexicographically</a> compares the elements of this [<code>Iterator</code>] with those |
| of another with respect to the specified comparison function. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.eq" class="method trait-impl has-srclink"><span class="since rightside" title="Stable since Rust version 1.5.0">1.5.0</span><a href="#method.eq" class="anchor"></a><h4 class="code-header">fn <a class="fnname">eq</a><I>(self, other: I) -> bool<span class="where fmt-newline">where<br> I: IntoIterator,<br> Self::Item: PartialEq<<I as IntoIterator>::Item>,</span></h4></section></summary><div class='docblock'>Determines if the elements of this [<code>Iterator</code>] are equal to those of |
| another. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.eq_by" class="method trait-impl has-srclink"><a href="#method.eq_by" class="anchor"></a><h4 class="code-header">fn <a class="fnname">eq_by</a><I, F>(self, other: I, eq: F) -> bool<span class="where fmt-newline">where<br> I: IntoIterator,<br> F: FnMut(Self::Item, <I as IntoIterator>::Item) -> bool,</span></h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>iter_order_by</code>)</span></div></span><div class='docblock'>Determines if the elements of this [<code>Iterator</code>] are equal to those of |
| another with respect to the specified equality function. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl has-srclink"><span class="since rightside" title="Stable since Rust version 1.5.0">1.5.0</span><a href="#method.ne" class="anchor"></a><h4 class="code-header">fn <a class="fnname">ne</a><I>(self, other: I) -> bool<span class="where fmt-newline">where<br> I: IntoIterator,<br> Self::Item: PartialEq<<I as IntoIterator>::Item>,</span></h4></section></summary><div class='docblock'>Determines if the elements of this [<code>Iterator</code>] are unequal to those of |
| another. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.lt" class="method trait-impl has-srclink"><span class="since rightside" title="Stable since Rust version 1.5.0">1.5.0</span><a href="#method.lt" class="anchor"></a><h4 class="code-header">fn <a class="fnname">lt</a><I>(self, other: I) -> bool<span class="where fmt-newline">where<br> I: IntoIterator,<br> Self::Item: PartialOrd<<I as IntoIterator>::Item>,</span></h4></section></summary><div class='docblock'>Determines if the elements of this [<code>Iterator</code>] are <a href="Ord#lexicographical-comparison">lexicographically</a> |
| less than those of another. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.le" class="method trait-impl has-srclink"><span class="since rightside" title="Stable since Rust version 1.5.0">1.5.0</span><a href="#method.le" class="anchor"></a><h4 class="code-header">fn <a class="fnname">le</a><I>(self, other: I) -> bool<span class="where fmt-newline">where<br> I: IntoIterator,<br> Self::Item: PartialOrd<<I as IntoIterator>::Item>,</span></h4></section></summary><div class='docblock'>Determines if the elements of this [<code>Iterator</code>] are <a href="Ord#lexicographical-comparison">lexicographically</a> |
| less or equal to those of another. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.gt" class="method trait-impl has-srclink"><span class="since rightside" title="Stable since Rust version 1.5.0">1.5.0</span><a href="#method.gt" class="anchor"></a><h4 class="code-header">fn <a class="fnname">gt</a><I>(self, other: I) -> bool<span class="where fmt-newline">where<br> I: IntoIterator,<br> Self::Item: PartialOrd<<I as IntoIterator>::Item>,</span></h4></section></summary><div class='docblock'>Determines if the elements of this [<code>Iterator</code>] are <a href="Ord#lexicographical-comparison">lexicographically</a> |
| greater than those of another. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.ge" class="method trait-impl has-srclink"><span class="since rightside" title="Stable since Rust version 1.5.0">1.5.0</span><a href="#method.ge" class="anchor"></a><h4 class="code-header">fn <a class="fnname">ge</a><I>(self, other: I) -> bool<span class="where fmt-newline">where<br> I: IntoIterator,<br> Self::Item: PartialOrd<<I as IntoIterator>::Item>,</span></h4></section></summary><div class='docblock'>Determines if the elements of this [<code>Iterator</code>] are <a href="Ord#lexicographical-comparison">lexicographically</a> |
| greater than or equal to those of another. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.is_sorted_by" class="method trait-impl has-srclink"><a href="#method.is_sorted_by" class="anchor"></a><h4 class="code-header">fn <a class="fnname">is_sorted_by</a><F>(self, compare: F) -> bool<span class="where fmt-newline">where<br> F: FnMut(&Self::Item, &Self::Item) -> Option<Ordering>,</span></h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>is_sorted</code>)</span></div></span><div class='docblock'>Checks if the elements of this iterator are sorted using the given comparator function. <a>Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.is_sorted_by_key" class="method trait-impl has-srclink"><a href="#method.is_sorted_by_key" class="anchor"></a><h4 class="code-header">fn <a class="fnname">is_sorted_by_key</a><F, K>(self, f: F) -> bool<span class="where fmt-newline">where<br> F: FnMut(Self::Item) -> K,<br> K: PartialOrd<K>,</span></h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>is_sorted</code>)</span></div></span><div class='docblock'>Checks if the elements of this iterator are sorted using the given key extraction |
| function. <a>Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-ResetStream-for-IteratorStream%3CT%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/combine/stream/mod.rs.html#156">source</a><a href="#impl-ResetStream-for-IteratorStream%3CT%3E" class="anchor"></a><h3 class="code-header">impl<T: Clone> <a class="trait" href="trait.ResetStream.html" title="trait combine::stream::ResetStream">ResetStream</a> for <a class="struct" href="struct.IteratorStream.html" title="struct combine::stream::IteratorStream">IteratorStream</a><T><span class="where fmt-newline">where<br> Self: <a class="trait" href="../trait.StreamOnce.html" title="trait combine::StreamOnce">StreamOnce</a>,</span></h3></section></summary><div class="impl-items"><section id="associatedtype.Checkpoint" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Checkpoint" class="anchor"></a><h4 class="code-header">type <a href="trait.ResetStream.html#associatedtype.Checkpoint" class="associatedtype">Checkpoint</a> = <a class="struct" href="struct.IteratorStream.html" title="struct combine::stream::IteratorStream">IteratorStream</a><T></h4></section><details class="rustdoc-toggle method-toggle" open><summary><section id="method.checkpoint" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/combine/stream/mod.rs.html#156">source</a><a href="#method.checkpoint" class="anchor"></a><h4 class="code-header">fn <a href="trait.ResetStream.html#tymethod.checkpoint" class="fnname">checkpoint</a>(&self) -> Self</h4></section></summary><div class='docblock'>Creates a <code>Checkpoint</code> at the current position which can be used to reset the stream |
| later to the current position <a href="trait.ResetStream.html#tymethod.checkpoint">Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.reset" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/combine/stream/mod.rs.html#156">source</a><a href="#method.reset" class="anchor"></a><h4 class="code-header">fn <a href="trait.ResetStream.html#tymethod.reset" class="fnname">reset</a>(&mut self, checkpoint: Self) -> Result<(), Self::<a class="associatedtype" href="../trait.StreamOnce.html#associatedtype.Error" title="type combine::StreamOnce::Error">Error</a>></h4></section></summary><div class='docblock'>Attempts to reset the stream to an earlier position.</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-StreamOnce-for-IteratorStream%3CInput%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/combine/stream/mod.rs.html#1200-1216">source</a><a href="#impl-StreamOnce-for-IteratorStream%3CInput%3E" class="anchor"></a><h3 class="code-header">impl<Input: Iterator> <a class="trait" href="../trait.StreamOnce.html" title="trait combine::StreamOnce">StreamOnce</a> for <a class="struct" href="struct.IteratorStream.html" title="struct combine::stream::IteratorStream">IteratorStream</a><Input><span class="where fmt-newline">where<br> Input::Item: Clone + PartialEq,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Token" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Token" class="anchor"></a><h4 class="code-header">type <a href="../trait.StreamOnce.html#associatedtype.Token" class="associatedtype">Token</a> = <Input as Iterator>::Item</h4></section></summary><div class='docblock'>The type of items which is yielded from this stream.</div></details><details class="rustdoc-toggle" open><summary><section id="associatedtype.Range" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Range" class="anchor"></a><h4 class="code-header">type <a href="../trait.StreamOnce.html#associatedtype.Range" class="associatedtype">Range</a> = <Input as Iterator>::Item</h4></section></summary><div class='docblock'>The type of a range of items yielded from this stream. |
| Types which do not a have a way of yielding ranges of items should just use the |
| <code>Self::Token</code> for this type. <a href="../trait.StreamOnce.html#associatedtype.Range">Read more</a></div></details><details class="rustdoc-toggle" open><summary><section id="associatedtype.Position" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Position" class="anchor"></a><h4 class="code-header">type <a href="../trait.StreamOnce.html#associatedtype.Position" class="associatedtype">Position</a> = ()</h4></section></summary><div class='docblock'>Type which represents the position in a stream. |
| <code>Ord</code> is required to allow parsers to determine which of two positions are further ahead. <a href="../trait.StreamOnce.html#associatedtype.Position">Read more</a></div></details><section id="associatedtype.Error" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Error" class="anchor"></a><h4 class="code-header">type <a href="../trait.StreamOnce.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="../error/enum.UnexpectedParse.html" title="enum combine::error::UnexpectedParse">UnexpectedParse</a></h4></section><details class="rustdoc-toggle method-toggle" open><summary><section id="method.uncons" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/combine/stream/mod.rs.html#1210-1215">source</a><a href="#method.uncons" class="anchor"></a><h4 class="code-header">fn <a href="../trait.StreamOnce.html#tymethod.uncons" class="fnname">uncons</a>(&mut self) -> Result<Self::<a class="associatedtype" href="../trait.StreamOnce.html#associatedtype.Token" title="type combine::StreamOnce::Token">Token</a>, <a class="type" href="type.StreamErrorFor.html" title="type combine::stream::StreamErrorFor">StreamErrorFor</a><Self>></h4></section></summary><div class='docblock'>Takes a stream and removes its first token, yielding the token and the rest of the elements. |
| Returns <code>Err</code> if no element could be retrieved. <a href="../trait.StreamOnce.html#tymethod.uncons">Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.is_partial" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../src/combine/stream/mod.rs.html#137-139">source</a><a href="#method.is_partial" class="anchor"></a><h4 class="code-header">fn <a href="../trait.StreamOnce.html#method.is_partial" class="fnname">is_partial</a>(&self) -> bool</h4></section></summary><div class='docblock'>Returns <code>true</code> if this stream only contains partial input. <a href="../trait.StreamOnce.html#method.is_partial">Read more</a></div></details></div></details><section id="impl-Copy-for-IteratorStream%3CInput%3E" class="impl has-srclink"><a class="srclink rightside" href="../../src/combine/stream/mod.rs.html#1171">source</a><a href="#impl-Copy-for-IteratorStream%3CInput%3E" class="anchor"></a><h3 class="code-header">impl<Input: Copy> Copy for <a class="struct" href="struct.IteratorStream.html" title="struct combine::stream::IteratorStream">IteratorStream</a><Input></h3></section></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-IteratorStream%3CInput%3E" class="impl has-srclink"><a href="#impl-RefUnwindSafe-for-IteratorStream%3CInput%3E" class="anchor"></a><h3 class="code-header">impl<Input> RefUnwindSafe for <a class="struct" href="struct.IteratorStream.html" title="struct combine::stream::IteratorStream">IteratorStream</a><Input><span class="where fmt-newline">where<br> Input: RefUnwindSafe,</span></h3></section><section id="impl-Send-for-IteratorStream%3CInput%3E" class="impl has-srclink"><a href="#impl-Send-for-IteratorStream%3CInput%3E" class="anchor"></a><h3 class="code-header">impl<Input> Send for <a class="struct" href="struct.IteratorStream.html" title="struct combine::stream::IteratorStream">IteratorStream</a><Input><span class="where fmt-newline">where<br> Input: Send,</span></h3></section><section id="impl-Sync-for-IteratorStream%3CInput%3E" class="impl has-srclink"><a href="#impl-Sync-for-IteratorStream%3CInput%3E" class="anchor"></a><h3 class="code-header">impl<Input> Sync for <a class="struct" href="struct.IteratorStream.html" title="struct combine::stream::IteratorStream">IteratorStream</a><Input><span class="where fmt-newline">where<br> Input: Sync,</span></h3></section><section id="impl-Unpin-for-IteratorStream%3CInput%3E" class="impl has-srclink"><a href="#impl-Unpin-for-IteratorStream%3CInput%3E" class="anchor"></a><h3 class="code-header">impl<Input> Unpin for <a class="struct" href="struct.IteratorStream.html" title="struct combine::stream::IteratorStream">IteratorStream</a><Input><span class="where fmt-newline">where<br> Input: Unpin,</span></h3></section><section id="impl-UnwindSafe-for-IteratorStream%3CInput%3E" class="impl has-srclink"><a href="#impl-UnwindSafe-for-IteratorStream%3CInput%3E" class="anchor"></a><h3 class="code-header">impl<Input> UnwindSafe for <a class="struct" href="struct.IteratorStream.html" title="struct combine::stream::IteratorStream">IteratorStream</a><Input><span class="where fmt-newline">where<br> Input: 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-IteratorStream%3CInput%3E" class="impl has-srclink"><a href="#impl-Any-for-IteratorStream%3CInput%3E" class="anchor"></a><h3 class="code-header">impl<T> Any for T<span class="where fmt-newline">where<br> 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>(&self) -> 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-IteratorStream%3CInput%3E" class="impl has-srclink"><a href="#impl-Borrow%3CT%3E-for-IteratorStream%3CInput%3E" class="anchor"></a><h3 class="code-header">impl<T> Borrow<T> for T<span class="where fmt-newline">where<br> 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>(&self) -> &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-IteratorStream%3CInput%3E" class="impl has-srclink"><a href="#impl-BorrowMut%3CT%3E-for-IteratorStream%3CInput%3E" class="anchor"></a><h3 class="code-header">impl<T> BorrowMut<T> for T<span class="where fmt-newline">where<br> 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>(&mut self) -> &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-IteratorStream%3CInput%3E" class="impl has-srclink"><a href="#impl-From%3CT%3E-for-IteratorStream%3CInput%3E" class="anchor"></a><h3 class="code-header">impl<T> From<T> 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) -> 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-IteratorStream%3CInput%3E" class="impl has-srclink"><a href="#impl-Into%3CU%3E-for-IteratorStream%3CInput%3E" class="anchor"></a><h3 class="code-header">impl<T, U> Into<U> for T<span class="where fmt-newline">where<br> U: From<T>,</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) -> 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]<T> for U</code> chooses to do.</p> |
| </div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-IntoIterator-for-IteratorStream%3CInput%3E" class="impl has-srclink"><a href="#impl-IntoIterator-for-IteratorStream%3CInput%3E" class="anchor"></a><h3 class="code-header">impl<I> IntoIterator for I<span class="where fmt-newline">where<br> I: Iterator,</span></h3></section></summary><div class="impl-items"><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 class="associatedtype">Item</a> = <I as Iterator>::Item</h4></section></summary><div class='docblock'>The type of the elements being iterated over.</div></details><details class="rustdoc-toggle" open><summary><section id="associatedtype.IntoIter" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.IntoIter" class="anchor"></a><h4 class="code-header">type <a class="associatedtype">IntoIter</a> = I</h4></section></summary><div class='docblock'>Which kind of iterator are we turning this into?</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.into_iter" class="method trait-impl has-srclink"><span class="since rightside" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/90603" title="Tracking issue for const_intoiterator_identity">unstable</a></span><a href="#method.into_iter" class="anchor"></a><h4 class="code-header">fn <a class="fnname">into_iter</a>(self) -> I</h4></section></summary><div class='docblock'>Creates an iterator from a value. <a>Read more</a></div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-ToOwned-for-IteratorStream%3CInput%3E" class="impl has-srclink"><a href="#impl-ToOwned-for-IteratorStream%3CInput%3E" class="anchor"></a><h3 class="code-header">impl<T> ToOwned for T<span class="where fmt-newline">where<br> 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>(&self) -> 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>(&self, target: &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-IteratorStream%3CInput%3E" class="impl has-srclink"><a href="#impl-TryFrom%3CU%3E-for-IteratorStream%3CInput%3E" class="anchor"></a><h3 class="code-header">impl<T, U> TryFrom<U> for T<span class="where fmt-newline">where<br> U: Into<T>,</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Error-2" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Error-2" 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) -> Result<T, <T as TryFrom<U>>::Error></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-IteratorStream%3CInput%3E" class="impl has-srclink"><a href="#impl-TryInto%3CU%3E-for-IteratorStream%3CInput%3E" class="anchor"></a><h3 class="code-header">impl<T, U> TryInto<U> for T<span class="where fmt-newline">where<br> U: TryFrom<T>,</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> = <U as TryFrom<T>>::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) -> Result<U, <U as TryFrom<T>>::Error></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="combine" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.66.0-nightly (5c8bff74b 2022-10-21)" ></div></body></html> |