You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
294 lines
158 KiB
294 lines
158 KiB
5 years ago
|
<!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="API documentation for the Rust `SmallVec` struct in crate `smallvec`."><meta name="keywords" content="rust, rustlang, rust-lang, SmallVec"><title>smallvec::SmallVec - Rust</title><link rel="stylesheet" type="text/css" href="../normalize.css"><link rel="stylesheet" type="text/css" href="../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../dark.css"><link rel="stylesheet" type="text/css" href="../light.css" id="themeStyle"><script src="../storage.js"></script><noscript><link rel="stylesheet" href="../noscript.css"></noscript><link rel="shortcut icon" href="../favicon.ico"><style type="text/css">#crate-search{background-image:url("../down-arrow.svg");}</style></head><body class="rustdoc struct"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">☰</div><a href='../smallvec/index.html'><div class='logo-container'><img src='../rust-logo.png' alt='logo'></div></a><p class='location'>Struct SmallVec</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#methods">Methods</a><div class="sidebar-links"><a href="#method.as_mut_slice">as_mut_slice</a><a href="#method.as_slice">as_slice</a><a href="#method.capacity">capacity</a><a href="#method.clear">clear</a><a href="#method.dedup">dedup</a><a href="#method.dedup_by">dedup_by</a><a href="#method.dedup_by_key">dedup_by_key</a><a href="#method.drain">drain</a><a href="#method.extend_from_slice">extend_from_slice</a><a href="#method.from_buf">from_buf</a><a href="#method.from_buf_and_len">from_buf_and_len</a><a href="#method.from_buf_and_len_unchecked">from_buf_and_len_unchecked</a><a href="#method.from_elem">from_elem</a><a href="#method.from_raw_parts">from_raw_parts</a><a href="#method.from_slice">from_slice</a><a href="#method.from_vec">from_vec</a><a href="#method.grow">grow</a><a href="#method.inline_size">inline_size</a><a href="#method.insert">insert</a><a href="#method.insert_from_slice">insert_from_slice</a><a href="#method.insert_many">insert_many</a><a href="#method.into_inner">into_inner</a><a href="#method.into_vec">into_vec</a><a href="#method.is_empty">is_empty</a><a href="#method.len">len</a><a href="#method.new">new</a><a href="#method.pop">pop</a><a href="#method.push">push</a><a href="#method.remove">remove</a><a href="#method.reserve">reserve</a><a href="#method.reserve_exact">reserve_exact</a><a href="#method.resize">resize</a><a href="#method.retain">retain</a><a href="#method.set_len">set_len</a><a href="#method.shrink_to_fit">shrink_to_fit</a><a href="#method.spilled">spilled</a><a href="#method.swap_remove">swap_remove</a><a href="#method.truncate">truncate</a><a href="#method.with_capacity">with_capacity</a></div><a class="sidebar-title" href="#deref-methods">Methods from Deref<Target=[A::Item]></a><a class="sidebar-title" href="#implementations">Trait Implementations</a><div class="sidebar-links"><a href="#impl-AsMut%3C%5B%3CA%20as%20Array%3E%3A%3AItem%5D%3E">AsMut<[<A as Array>::Item]></a><a href="#impl-AsRef%3C%5B%3CA%20as%20Array%3E%3A%3AItem%5D%3E">AsRef<[<A as Array>::Item]></a><a href="#impl-Borrow%3C%5B%3CA%20as%20Array%3E%3A%3AItem%5D%3E">Borrow<[<A as Array>::Item]></a><a href="#impl-BorrowMut%3C%5B%3CA%20as%20Array%3E%3A%3AItem%5D%3E">BorrowMut<[<A as Array>::Item]></a><a href="#impl-Clone">Clone</a><a href="#impl-Debug">Debug</a><a href="#impl-Default">Default</a><a href="#impl-Deref">Deref</a><a href="#impl-DerefMut">DerefMut</a><a href="#impl-Drop">Drop</a><a href="#impl-Eq">Eq</a><a href="#impl-Extend%3C%3CA%20as%20Array%3E%3A%3AItem%3E">Extend<<A as Array>::Item></a><a href="#impl-ExtendFromSlice%3C%3CA%20as%20Array%3E%3A%3AItem%3E">ExtendFromSlice<<A as Array>::Item></a><a
|
||
|
<p><code>SmallVec</code> acts like a vector, but can store a limited amount of data inline within the
|
||
|
<code>SmallVec</code> struct rather than in a separate allocation. If the data exceeds this limit, the
|
||
|
<code>SmallVec</code> will "spill" its data onto the heap, allocating a new buffer to hold it.</p>
|
||
|
<p>The amount of data that a <code>SmallVec</code> can store inline depends on its backing store. The backing
|
||
|
store can be any type that implements the <code>Array</code> trait; usually it is a small fixed-sized
|
||
|
array. For example a <code>SmallVec<[u64; 8]></code> can hold up to eight 64-bit integers inline.</p>
|
||
|
<h2 id="example" class="section-header"><a href="#example">Example</a></h2>
|
||
|
<div class="example-wrap"><pre class="rust rust-example-rendered">
|
||
|
<span class="kw">use</span> <span class="ident">smallvec</span>::<span class="ident">SmallVec</span>;
|
||
|
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">v</span> <span class="op">=</span> <span class="ident">SmallVec</span>::<span class="op"><</span>[<span class="ident">u8</span>; <span class="number">4</span>]<span class="op">></span>::<span class="ident">new</span>(); <span class="comment">// initialize an empty vector</span>
|
||
|
|
||
|
<span class="comment">// The vector can hold up to 4 items without spilling onto the heap.</span>
|
||
|
<span class="ident">v</span>.<span class="ident">extend</span>(<span class="number">0</span>..<span class="number">4</span>);
|
||
|
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="ident">v</span>.<span class="ident">len</span>(), <span class="number">4</span>);
|
||
|
<span class="macro">assert</span><span class="macro">!</span>(<span class="op">!</span><span class="ident">v</span>.<span class="ident">spilled</span>());
|
||
|
|
||
|
<span class="comment">// Pushing another element will force the buffer to spill:</span>
|
||
|
<span class="ident">v</span>.<span class="ident">push</span>(<span class="number">4</span>);
|
||
|
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="ident">v</span>.<span class="ident">len</span>(), <span class="number">5</span>);
|
||
|
<span class="macro">assert</span><span class="macro">!</span>(<span class="ident">v</span>.<span class="ident">spilled</span>());</pre></div>
|
||
|
</div><h2 id='methods' class='small-section-header'>Methods<a href='#methods' class='anchor'></a></h2><h3 id='impl' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#403-1033' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.new' class="method"><div class="important-traits"><div class='tooltip'>ⓘ<span class='tooltiptext'>Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></div><div class="content hidden"><h3 class="important">Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></h3><code class="content"><span class="where fmt-newline">impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a><Item = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>>> <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></code></div></div><code id='new.v'>pub fn <a href='#method.new' class='fnname'>new</a>() -> <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a class='srclink' href='../src/smallvec/lib.rs.html#406-413' title='goto source code'>[src]</a></h4><div class='docblock'><p>Construct an empty vector</p>
|
||
|
</div><h4 id='method.with_capacity' class="method"><code id='with_capacity.v'>pub fn <a href='#method.with_capacity' class='fnname'>with_capacity</a>(n: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -> Self</code><a class='srclink' href='../src/smallvec/lib.rs.html#429-433' title='goto source code'>[src]</a></h4><div class='docblock'><p>Construct an empty vector with enough capacity pre-allocated to store at least <code>n</code>
|
||
|
elements.</p>
|
||
|
<p>Will create a heap allocation only if <code>n</code> is larger than the inline capacity.</p>
|
||
|
|
||
|
<div class="example-wrap"><pre class="rust rust-example-rendered">
|
||
|
|
||
|
<span class="kw">let</span> <span class="ident">v</span>: <span class="ident">SmallVec</span><span class="op"><</span>[<span class="ident">u8</span>; <span class="number">3</span>]<span class="op">></span> <span class="op">=</span> <span class="ident">SmallVec</span>::<span class="ident">with_capacity</span>(<span class="number">100</span>);
|
||
|
|
||
|
<span class="macro">assert</span><span class="macro">!</span>(<span class="ident">v</span>.<span class="ident">is_empty</span>());
|
||
|
<span class="macro">assert</span><span class="macro">!</span>(<span class="ident">v</span>.<span class="ident">capacity</span>() <span class="op">></span><span class="op">=</span> <span class="number">100</span>);</pre></div>
|
||
|
</div><h4 id='method.from_vec' class="method"><div class="important-traits"><div class='tooltip'>ⓘ<span class='tooltiptext'>Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></div><div class="content hidden"><h3 class="important">Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></h3><code class="content"><span class="where fmt-newline">impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a><Item = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>>> <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></code></div></div><code id='from_vec.v'>pub fn <a href='#method.from_vec' class='fnname'>from_vec</a>(vec: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>>) -> <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a class='srclink' href='../src/smallvec/lib.rs.html#448-470' title='goto source code'>[src]</a></h4><div class='docblock'><p>Construct a new <code>SmallVec</code> from a <code>Vec<A::Item></code>.</p>
|
||
|
<p>Elements will be copied to the inline buffer if vec.capacity() <= A::size().</p>
|
||
|
|
||
|
<div class="example-wrap"><pre class="rust rust-example-rendered">
|
||
|
<span class="kw">use</span> <span class="ident">smallvec</span>::<span class="ident">SmallVec</span>;
|
||
|
|
||
|
<span class="kw">let</span> <span class="ident">vec</span> <span class="op">=</span> <span class="macro">vec</span><span class="macro">!</span>[<span class="number">1</span>, <span class="number">2</span>, <span class="number">3</span>, <span class="number">4</span>, <span class="number">5</span>];
|
||
|
<span class="kw">let</span> <span class="ident">small_vec</span>: <span class="ident">SmallVec</span><span class="op"><</span>[<span class="kw">_</span>; <span class="number">3</span>]<span class="op">></span> <span class="op">=</span> <span class="ident">SmallVec</span>::<span class="ident">from_vec</span>(<span class="ident">vec</span>);
|
||
|
|
||
|
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="kw-2">&</span><span class="kw-2">*</span><span class="ident">small_vec</span>, <span class="kw-2">&</span>[<span class="number">1</span>, <span class="number">2</span>, <span class="number">3</span>, <span class="number">4</span>, <span class="number">5</span>]);</pre></div>
|
||
|
</div><h4 id='method.from_buf' class="method"><div class="important-traits"><div class='tooltip'>ⓘ<span class='tooltiptext'>Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></div><div class="content hidden"><h3 class="important">Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></h3><code class="content"><span class="where fmt-newline">impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a><Item = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>>> <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></code></div></div><code id='from_buf.v'>pub fn <a href='#method.from_buf' class='fnname'>from_buf</a>(buf: A) -> <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a class='srclink' href='../src/smallvec/lib.rs.html#484-489' title='goto source code'>[src]</a></h4><div class='docblock'><p>Constructs a new <code>SmallVec</code> on the stack from an <code>A</code> without
|
||
|
copying elements.</p>
|
||
|
|
||
|
<div class="example-wrap"><pre class="rust rust-example-rendered">
|
||
|
<span class="kw">use</span> <span class="ident">smallvec</span>::<span class="ident">SmallVec</span>;
|
||
|
|
||
|
<span class="kw">let</span> <span class="ident">buf</span> <span class="op">=</span> [<span class="number">1</span>, <span class="number">2</span>, <span class="number">3</span>, <span class="number">4</span>, <span class="number">5</span>];
|
||
|
<span class="kw">let</span> <span class="ident">small_vec</span>: <span class="ident">SmallVec</span><span class="op"><</span><span class="kw">_</span><span class="op">></span> <span class="op">=</span> <span class="ident">SmallVec</span>::<span class="ident">from_buf</span>(<span class="ident">buf</span>);
|
||
|
|
||
|
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="kw-2">&</span><span class="kw-2">*</span><span class="ident">small_vec</span>, <span class="kw-2">&</span>[<span class="number">1</span>, <span class="number">2</span>, <span class="number">3</span>, <span class="number">4</span>, <span class="number">5</span>]);</pre></div>
|
||
|
</div><h4 id='method.from_buf_and_len' class="method"><div class="important-traits"><div class='tooltip'>ⓘ<span class='tooltiptext'>Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></div><div class="content hidden"><h3 class="important">Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></h3><code class="content"><span class="where fmt-newline">impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a><Item = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>>> <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></code></div></div><code id='from_buf_and_len.v'>pub fn <a href='#method.from_buf_and_len' class='fnname'>from_buf_and_len</a>(buf: A, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -> <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a class='srclink' href='../src/smallvec/lib.rs.html#504-507' title='goto source code'>[src]</a></h4><div class='docblock'><p>Constructs a new <code>SmallVec</code> on the stack from an <code>A</code> without
|
||
|
copying elements. Also sets the length, which must be less or
|
||
|
equal to the size of <code>buf</code>.</p>
|
||
|
|
||
|
<div class="example-wrap"><pre class="rust rust-example-rendered">
|
||
|
<span class="kw">use</span> <span class="ident">smallvec</span>::<span class="ident">SmallVec</span>;
|
||
|
|
||
|
<span class="kw">let</span> <span class="ident">buf</span> <span class="op">=</span> [<span class="number">1</span>, <span class="number">2</span>, <span class="number">3</span>, <span class="number">4</span>, <span class="number">5</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>];
|
||
|
<span class="kw">let</span> <span class="ident">small_vec</span>: <span class="ident">SmallVec</span><span class="op"><</span><span class="kw">_</span><span class="op">></span> <span class="op">=</span> <span class="ident">SmallVec</span>::<span class="ident">from_buf_and_len</span>(<span class="ident">buf</span>, <span class="number">5</span>);
|
||
|
|
||
|
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="kw-2">&</span><span class="kw-2">*</span><span class="ident">small_vec</span>, <span class="kw-2">&</span>[<span class="number">1</span>, <span class="number">2</span>, <span class="number">3</span>, <span class="number">4</span>, <span class="number">5</span>]);</pre></div>
|
||
|
</div><h4 id='method.from_buf_and_len_unchecked' class="method"><div class="important-traits"><div class='tooltip'>ⓘ<span class='tooltiptext'>Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></div><div class="content hidden"><h3 class="important">Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></h3><code class="content"><span class="where fmt-newline">impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a><Item = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>>> <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></code></div></div><code id='from_buf_and_len_unchecked.v'>pub unsafe fn <a href='#method.from_buf_and_len_unchecked' class='fnname'>from_buf_and_len_unchecked</a>(buf: A, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -> <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a class='srclink' href='../src/smallvec/lib.rs.html#524-529' title='goto source code'>[src]</a></h4><div class='docblock'><p>Constructs a new <code>SmallVec</code> on the stack from an <code>A</code> without
|
||
|
copying elements. Also sets the length. The user is responsible
|
||
|
for ensuring that <code>len <= A::size()</code>.</p>
|
||
|
|
||
|
<div class="example-wrap"><pre class="rust rust-example-rendered">
|
||
|
<span class="kw">use</span> <span class="ident">smallvec</span>::<span class="ident">SmallVec</span>;
|
||
|
|
||
|
<span class="kw">let</span> <span class="ident">buf</span> <span class="op">=</span> [<span class="number">1</span>, <span class="number">2</span>, <span class="number">3</span>, <span class="number">4</span>, <span class="number">5</span>, <span class="number">0</span>, <span class="number">0</span>, <span class="number">0</span>];
|
||
|
<span class="kw">let</span> <span class="ident">small_vec</span>: <span class="ident">SmallVec</span><span class="op"><</span><span class="kw">_</span><span class="op">></span> <span class="op">=</span> <span class="kw">unsafe</span> {
|
||
|
<span class="ident">SmallVec</span>::<span class="ident">from_buf_and_len_unchecked</span>(<span class="ident">buf</span>, <span class="number">5</span>)
|
||
|
};
|
||
|
|
||
|
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="kw-2">&</span><span class="kw-2">*</span><span class="ident">small_vec</span>, <span class="kw-2">&</span>[<span class="number">1</span>, <span class="number">2</span>, <span class="number">3</span>, <span class="number">4</span>, <span class="number">5</span>]);</pre></div>
|
||
|
</div><h4 id='method.set_len' class="method"><code id='set_len.v'>pub unsafe fn <a href='#method.set_len' class='fnname'>set_len</a>(&mut self, new_len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)</code><a class='srclink' href='../src/smallvec/lib.rs.html#537-540' title='goto source code'>[src]</a></h4><div class='docblock'><p>Sets the length of a vector.</p>
|
||
|
<p>This will explicitly set the size of the vector, without actually
|
||
|
modifying its buffers, so it is up to the caller to ensure that the
|
||
|
vector is actually the specified size.</p>
|
||
|
</div><h4 id='method.inline_size' class="method"><code id='inline_size.v'>pub fn <a href='#method.inline_size' class='fnname'>inline_size</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#544-546' title='goto source code'>[src]</a></h4><div class='docblock'><p>The maximum number of elements this vector can hold inline</p>
|
||
|
</div><h4 id='method.len' class="method"><code id='len.v'>pub fn <a href='#method.len' class='fnname'>len</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#550-552' title='goto source code'>[src]</a></h4><div class='docblock'><p>The number of elements stored in the vector</p>
|
||
|
</div><h4 id='method.is_empty' class="method"><code id='is_empty.v'>pub fn <a href='#method.is_empty' class='fnname'>is_empty</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#556-558' title='goto source code'>[src]</a></h4><div class='docblock'><p>Returns <code>true</code> if the vector is empty</p>
|
||
|
</div><h4 id='method.capacity' class="method"><code id='capacity.v'>pub fn <a href='#method.capacity' class='fnname'>capacity</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#562-564' title='goto source code'>[src]</a></h4><div class='docblock'><p>The number of items the vector can hold without reallocating</p>
|
||
|
</div><h4 id='method.spilled' class="method"><code id='spilled.v'>pub fn <a href='#method.spilled' class='fnname'>spilled</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#595-597' title='goto source code'>[src]</a></h4><div class='docblock'><p>Returns <code>true</code> if the data has spilled into a separate heap-allocated buffer.</p>
|
||
|
</div><h4 id='method.drain' class="method"><div class="important-traits"><div class='tooltip'>ⓘ<span class='tooltiptext'>Important traits for <a class="struct" href="../smallvec/struct.Drain.html" title="struct smallvec::Drain">Drain</a><'a, T></span></div><div class="content hidden"><h3 class="important">Important traits for <a class="struct" href="../smallvec/struct.Drain.html" title="struct smallvec::Drain">Drain</a><'a, T></h3><code class="content"><span class="where fmt-newline">impl<'a, T: 'a> <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a> for <a class="struct" href="../smallvec/struct.Drain.html" title="struct smallvec::Drain">Drain</a><'a, T></span><span class="where fmt-newline"> type <a href='https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item' class="type">Item</a> = T;</span></code></div></div><code id='drain.v'>pub fn <a href='#method.drain' class='fnname'>drain</a>(&mut self) -> <a class="struct" href="../smallvec/struct.Drain.html" title="struct smallvec::Drain">Drain</a><A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>></code><a class='srclink' href='../src/smallvec/lib.rs.html#600-613' title='goto source code'>[src]</a></h4><div class='docblock'><p>Empty the vector and return an iterator over its former contents.</p>
|
||
|
</div><h4 id='method.push' class="method"><code id='push.v'>pub fn <a href='#method.push' class='fnname'>push</a>(&mut self, value: A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>)</code><a class='srclink' href='../src/smallvec/lib.rs.html#617-627' title='goto source code'>[src]</a></h4><div class='docblock'><p>Append an item to the vector.</p>
|
||
|
</div><h4 id='method.pop' class="method"><code id='pop.v'>pub fn <a href='#method.pop' class='fnname'>pop</a>(&mut self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>></code><a class='srclink' href='../src/smallvec/lib.rs.html#631-641' title='goto source code'>[src]</a></h4><div class='docblock'><p>Remove an item from the end of the vector and return it, or None if empty.</p>
|
||
|
</div><h4 id='method.grow' class="method"><code id='grow.v'>pub fn <a href='#method.grow' class='fnname'>grow</a>(&mut self, new_cap: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)</code><a class='srclink' href='../src/smallvec/lib.rs.html#646-673' title='goto source code'>[src]</a></h4><div class='docblock'><p>Re-allocate to set the capacity to <code>max(new_cap, inline_size())</code>.</p>
|
||
|
<p>Panics if <code>new_cap</code> is less than the vector's length.</p>
|
||
|
</div><h4 id='method.reserve' class="method"><code id='reserve.v'>pub fn <a href='#method.reserve' class='fnname'>reserve</a>(&mut self, additional: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)</code><a class='srclink' href='../src/smallvec/lib.rs.html#683-694' title='goto source code'>[src]</a></h4><div class='docblock'><p>Reserve capacity for <code>additional</code> more elements to be inserted.</p>
|
||
|
<p>May reserve more space to avoid frequent reallocations.</p>
|
||
|
<p>If the new capacity would overflow <code>usize</code> then it will be set to <code>usize::max_value()</code>
|
||
|
instead. (This means that inserting <code>additional</code> new elements is not guaranteed to be
|
||
|
possible after calling this function.)</p>
|
||
|
</div><h4 id='method.reserve_exact' class="method"><code id='reserve_exact.v'>pub fn <a href='#method.reserve_exact' class='fnname'>reserve_exact</a>(&mut self, additional: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)</code><a class='srclink' href='../src/smallvec/lib.rs.html#699-707' title='goto source code'>[src]</a></h4><div class='docblock'><p>Reserve the minimum capacity for <code>additional</code> more elements to be inserted.</p>
|
||
|
<p>Panics if the new capacity overflows <code>usize</code>.</p>
|
||
|
</div><h4 id='method.shrink_to_fit' class="method"><code id='shrink_to_fit.v'>pub fn <a href='#method.shrink_to_fit' class='fnname'>shrink_to_fit</a>(&mut self)</code><a class='srclink' href='../src/smallvec/lib.rs.html#713-729' title='goto source code'>[src]</a></h4><div class='docblock'><p>Shrink the capacity of the vector as much as possible.</p>
|
||
|
<p>When possible, this will move data from an external heap buffer to the vector's inline
|
||
|
storage.</p>
|
||
|
</div><h4 id='method.truncate' class="method"><code id='truncate.v'>pub fn <a href='#method.truncate' class='fnname'>truncate</a>(&mut self, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>)</code><a class='srclink' href='../src/smallvec/lib.rs.html#738-747' title='goto source code'>[src]</a></h4><div class='docblock'><p>Shorten the vector, keeping the first <code>len</code> elements and dropping the rest.</p>
|
||
|
<p>If <code>len</code> is greater than or equal to the vector's current length, this has no
|
||
|
effect.</p>
|
||
|
<p>This does not re-allocate. If you want the vector's capacity to shrink, call
|
||
|
<code>shrink_to_fit</code> after truncating.</p>
|
||
|
</div><h4 id='method.as_slice' class="method"><code id='as_slice.v'>pub fn <a href='#method.as_slice' class='fnname'>as_slice</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&[</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#752-754' title='goto source code'>[src]</a></h4><div class='docblock'><p>Extracts a slice containing the entire vector.</p>
|
||
|
<p>Equivalent to <code>&s[..]</code>.</p>
|
||
|
</div><h4 id='method.as_mut_slice' class="method"><code id='as_mut_slice.v'>pub fn <a href='#method.as_mut_slice' class='fnname'>as_mut_slice</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&mut [</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#759-761' title='goto source code'>[src]</a></h4><div class='docblock'><p>Extracts a mutable slice of the entire vector.</p>
|
||
|
<p>Equivalent to <code>&mut s[..]</code>.</p>
|
||
|
</div><h4 id='method.swap_remove' class="method"><code id='swap_remove.v'>pub fn <a href='#method.swap_remove' class='fnname'>swap_remove</a>(&mut self, index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -> A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#769-773' title='goto source code'>[src]</a></h4><div class='docblock'><p>Remove the element at position <code>index</code>, replacing it with the last element.</p>
|
||
|
<p>This does not preserve ordering, but is O(1).</p>
|
||
|
<p>Panics if <code>index</code> is out of bounds.</p>
|
||
|
</div><h4 id='method.clear' class="method"><code id='clear.v'>pub fn <a href='#method.clear' class='fnname'>clear</a>(&mut self)</code><a class='srclink' href='../src/smallvec/lib.rs.html#777-779' title='goto source code'>[src]</a></h4><div class='docblock'><p>Remove all elements from the vector.</p>
|
||
|
</div><h4 id='method.remove' class="method"><code id='remove.v'>pub fn <a href='#method.remove' class='fnname'>remove</a>(&mut self, index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -> A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#785-796' title='goto source code'>[src]</a></h4><div class='docblock'><p>Remove and return the element at position <code>index</code>, shifting all elements after it to the
|
||
|
left.</p>
|
||
|
<p>Panics if <code>index</code> is out of bounds.</p>
|
||
|
</div><h4 id='method.insert' class="method"><code id='insert.v'>pub fn <a href='#method.insert' class='fnname'>insert</a>(&mut self, index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, element: A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>)</code><a class='srclink' href='../src/smallvec/lib.rs.html#801-813' title='goto source code'>[src]</a></h4><div class='docblock'><p>Insert an element at position <code>index</code>, shifting all elements after it to the right.</p>
|
||
|
<p>Panics if <code>index</code> is out of bounds.</p>
|
||
|
</div><h4 id='method.insert_many' class="method"><code id='insert_many.v'>pub fn <a href='#method.insert_many' class='fnname'>insert_many</a><I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item = A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>>>(<br> &mut self, <br> index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, <br> iterable: I<br>)</code><a class='srclink' href='../src/smallvec/lib.rs.html#817-859' title='goto source code'>[src]</a></h4><div class='docblock'><p>Insert multiple elements at position <code>index</code>, shifting all following elements toward the
|
||
|
back.</p>
|
||
|
</div><h4 id='method.into_vec' class="method"><code id='into_vec.v'>pub fn <a href='#method.into_vec' class='fnname'>into_vec</a>(self) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>></code><a class='srclink' href='../src/smallvec/lib.rs.html#863-874' title='goto source code'>[src]</a></h4><div class='docblock'><p>Convert a SmallVec to a Vec, without reallocating if the SmallVec has already spilled onto
|
||
|
the heap.</p>
|
||
|
</div><h4 id='method.into_inner' class="method"><code id='into_inner.v'>pub fn <a href='#method.into_inner' class='fnname'>into_inner</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><A, Self></code><a class='srclink' href='../src/smallvec/lib.rs.html#880-890' title='goto source code'>[src]</a></h4><div class='docblock'><p>Convert the SmallVec into an <code>A</code> if possible. Otherwise return <code>Err(Self)</code>.</p>
|
||
|
<p>This method returns <code>Err(Self)</code> if the SmallVec is too short (and the <code>A</code> contains uninitialized elements),
|
||
|
or if the SmallVec is too long (and all the elements were spilled to the heap).</p>
|
||
|
</div><h4 id='method.retain' class="method"><code id='retain.v'>pub fn <a href='#method.retain' class='fnname'>retain</a><F: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(&mut A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>>(&mut self, f: F)</code><a class='srclink' href='../src/smallvec/lib.rs.html#897-908' title='goto source code'>[src]</a></h4><div class='docblock'><p>Retains only the elements specified by the predicate.</p>
|
||
|
<p>In other words, remove all elements <code>e</code> such that <code>f(&e)</code> returns <code>false</code>.
|
||
|
This method operates in place and preserves the order of the retained
|
||
|
elements.</p>
|
||
|
</div><h4 id='method.dedup' class="method"><code id='dedup.v'>pub fn <a href='#method.dedup' class='fnname'>dedup</a>(&mut self) <span class="where fmt-newline">where<br> A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>>, </span></code><a class='srclink' href='../src/smallvec/lib.rs.html#911-913' title='goto source code'>[src]</a></h4><div class='docblock'><p>Removes consecutive duplicate elements.</p>
|
||
|
</div><h4 id='method.dedup_by' class="method"><code id='dedup_by.v'>pub fn <a href='#method.dedup_by' class='fnname'>dedup_by</a><F>(&mut self, same_bucket: F) <span class="where fmt-newline">where<br> F: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(&mut A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>, &mut A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>, </span></code><a class='srclink' href='../src/smallvec/lib.rs.html#916-944' title='goto source code'>[src]</a></h4><div class='docblock'><p>Removes consecutive duplicate elements using the given equality relation.</p>
|
||
|
</div><h4 id='method.dedup_by_key' class="method"><code id='dedup_by_key.v'>pub fn <a href='#method.dedup_by_key' class='fnname'>dedup_by_key</a><F, K>(&mut self, key: F) <span class="where fmt-newline">where<br> F: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnMut.html" title="trait core::ops::function::FnMut">FnMut</a>(&mut A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>) -> K,<br> K: <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><K>, </span></code><a class='srclink' href='../src/smallvec/lib.rs.html#947-952' title='goto source code'>[src]</a></h4><div class='docblock'><p>Removes consecutive elements that map to the same key.</p>
|
||
|
</div><h4 id='method.from_raw_parts' class="method"><div class="important-traits"><div class='tooltip'>ⓘ<span class='tooltiptext'>Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></div><div class="content hidden"><h3 class="important">Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></h3><code class="content"><span class="where fmt-newline">impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a><Item = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>>> <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></code></div></div><code id='from_raw_parts.v'>pub unsafe fn <a href='#method.from_raw_parts' class='fnname'>from_raw_parts</a>(<br> ptr: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html">*mut </a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>, <br> length: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, <br> capacity: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a><br>) -> <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a class='srclink' href='../src/smallvec/lib.rs.html#1022-1032' title='goto source code'>[src]</a></h4><div class='docblock'><p>Creates a <code>SmallVec</code> directly from the raw components of another
|
||
|
<code>SmallVec</code>.</p>
|
||
|
<h1 id="safety" class="section-header"><a href="#safety">Safety</a></h1>
|
||
|
<p>This is highly unsafe, due to the number of invariants that aren't
|
||
|
checked:</p>
|
||
|
<ul>
|
||
|
<li><code>ptr</code> needs to have been previously allocated via <code>SmallVec</code> for its
|
||
|
spilled storage (at least, it's highly likely to be incorrect if it
|
||
|
wasn't).</li>
|
||
|
<li><code>ptr</code>'s <code>A::Item</code> type needs to be the same size and alignment that
|
||
|
it was allocated with</li>
|
||
|
<li><code>length</code> needs to be less than or equal to <code>capacity</code>.</li>
|
||
|
<li><code>capacity</code> needs to be the capacity that the pointer was allocated
|
||
|
with.</li>
|
||
|
</ul>
|
||
|
<p>Violating these may cause problems like corrupting the allocator's
|
||
|
internal data structures.</p>
|
||
|
<p>Additionally, <code>capacity</code> must be greater than the amount of inline
|
||
|
storage <code>A</code> has; that is, the new <code>SmallVec</code> must need to spill over
|
||
|
into heap allocated storage. This condition is asserted against.</p>
|
||
|
<p>The ownership of <code>ptr</code> is effectively transferred to the
|
||
|
<code>SmallVec</code> which may then deallocate, reallocate or change the
|
||
|
contents of memory pointed to by the pointer at will. Ensure
|
||
|
that nothing else uses the pointer after calling this
|
||
|
function.</p>
|
||
|
<h1 id="examples" class="section-header"><a href="#examples">Examples</a></h1>
|
||
|
<div class="example-wrap"><pre class="rust rust-example-rendered">
|
||
|
<span class="kw">use</span> <span class="ident">std</span>::<span class="ident">mem</span>;
|
||
|
<span class="kw">use</span> <span class="ident">std</span>::<span class="ident">ptr</span>;
|
||
|
|
||
|
<span class="kw">fn</span> <span class="ident">main</span>() {
|
||
|
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">v</span>: <span class="ident">SmallVec</span><span class="op"><</span>[<span class="kw">_</span>; <span class="number">1</span>]<span class="op">></span> <span class="op">=</span> <span class="macro">smallvec</span><span class="macro">!</span>[<span class="number">1</span>, <span class="number">2</span>, <span class="number">3</span>];
|
||
|
|
||
|
<span class="comment">// Pull out the important parts of `v`.</span>
|
||
|
<span class="kw">let</span> <span class="ident">p</span> <span class="op">=</span> <span class="ident">v</span>.<span class="ident">as_mut_ptr</span>();
|
||
|
<span class="kw">let</span> <span class="ident">len</span> <span class="op">=</span> <span class="ident">v</span>.<span class="ident">len</span>();
|
||
|
<span class="kw">let</span> <span class="ident">cap</span> <span class="op">=</span> <span class="ident">v</span>.<span class="ident">capacity</span>();
|
||
|
<span class="kw">let</span> <span class="ident">spilled</span> <span class="op">=</span> <span class="ident">v</span>.<span class="ident">spilled</span>();
|
||
|
|
||
|
<span class="kw">unsafe</span> {
|
||
|
<span class="comment">// Forget all about `v`. The heap allocation that stored the</span>
|
||
|
<span class="comment">// three values won't be deallocated.</span>
|
||
|
<span class="ident">mem</span>::<span class="ident">forget</span>(<span class="ident">v</span>);
|
||
|
|
||
|
<span class="comment">// Overwrite memory with [4, 5, 6].</span>
|
||
|
<span class="comment">//</span>
|
||
|
<span class="comment">// This is only safe if `spilled` is true! Otherwise, we are</span>
|
||
|
<span class="comment">// writing into the old `SmallVec`'s inline storage on the</span>
|
||
|
<span class="comment">// stack.</span>
|
||
|
<span class="macro">assert</span><span class="macro">!</span>(<span class="ident">spilled</span>);
|
||
|
<span class="kw">for</span> <span class="ident">i</span> <span class="kw">in</span> <span class="number">0</span>..<span class="ident">len</span> <span class="kw">as</span> <span class="ident">isize</span> {
|
||
|
<span class="ident">ptr</span>::<span class="ident">write</span>(<span class="ident">p</span>.<span class="ident">offset</span>(<span class="ident">i</span>), <span class="number">4</span> <span class="op">+</span> <span class="ident">i</span>);
|
||
|
}
|
||
|
|
||
|
<span class="comment">// Put everything back together into a SmallVec with a different</span>
|
||
|
<span class="comment">// amount of inline storage, but which is still less than `cap`.</span>
|
||
|
<span class="kw">let</span> <span class="ident">rebuilt</span> <span class="op">=</span> <span class="ident">SmallVec</span>::<span class="op"><</span>[<span class="kw">_</span>; <span class="number">2</span>]<span class="op">></span>::<span class="ident">from_raw_parts</span>(<span class="ident">p</span>, <span class="ident">len</span>, <span class="ident">cap</span>);
|
||
|
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="kw-2">&</span><span class="kw-2">*</span><span class="ident">rebuilt</span>, <span class="kw-2">&</span>[<span class="number">4</span>, <span class="number">5</span>, <span class="number">6</span>]);
|
||
|
}
|
||
|
}</pre></div>
|
||
|
</div></div><h3 id='impl-1' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A> <span class="where fmt-newline">where<br> A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a>, </span></code><a href='#impl-1' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1035-1088' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.from_slice' class="method"><code id='from_slice.v'>pub fn <a href='#method.from_slice' class='fnname'>from_slice</a>(slice: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&[</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>) -> Self</code><a class='srclink' href='../src/smallvec/lib.rs.html#1039-1059' title='goto source code'>[src]</a></h4><div class='docblock'><p>Copy the elements from a slice into a new <code>SmallVec</code>.</p>
|
||
|
<p>For slices of <code>Copy</code> types, this is more efficient than <code>SmallVec::from(slice)</code>.</p>
|
||
|
</div><h4 id='method.insert_from_slice' class="method"><code id='insert_from_slice.v'>pub fn <a href='#method.insert_from_slice' class='fnname'>insert_from_slice</a>(&mut self, index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, slice: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&[</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>)</code><a class='srclink' href='../src/smallvec/lib.rs.html#1065-1078' title='goto source code'>[src]</a></h4><div class='docblock'><p>Copy elements from a slice into the vector at position <code>index</code>, shifting any following
|
||
|
elements toward the back.</p>
|
||
|
<p>For slices of <code>Copy</code> types, this is more efficient than <code>insert</code>.</p>
|
||
|
</div><h4 id='method.extend_from_slice' class="method"><code id='extend_from_slice.v'>pub fn <a href='#method.extend_from_slice' class='fnname'>extend_from_slice</a>(&mut self, slice: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&[</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>)</code><a class='srclink' href='../src/smallvec/lib.rs.html#1084-1087' title='goto source code'>[src]</a></h4><div class='docblock'><p>Copy elements from a slice and append them to the vector.</p>
|
||
|
<p>For slices of <code>Copy</code> types, this is more efficient than <code>extend</code>.</p>
|
||
|
</div></div><h3 id='impl-2' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A> <span class="where fmt-newline">where<br> A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>, </span></code><a href='#impl-2' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1090-1131' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.resize' class="method"><code id='resize.v'>pub fn <a href='#method.resize' class='fnname'>resize</a>(&mut self, len: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, value: A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>)</code><a class='srclink' href='../src/smallvec/lib.rs.html#1097-1105' title='goto source code'>[src]</a></h4><div class='docblock'><p>Resizes the vector so that its length is equal to <code>len</code>.</p>
|
||
|
<p>If <code>len</code> is less than the current length, the vector simply truncated.</p>
|
||
|
<p>If <code>len</code> is greater than the current length, <code>value</code> is appended to the
|
||
|
vector until its length equals <code>len</code>.</p>
|
||
|
</div><h4 id='method.from_elem' class="method"><code id='from_elem.v'>pub fn <a href='#method.from_elem' class='fnname'>from_elem</a>(elem: A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>, n: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -> Self</code><a class='srclink' href='../src/smallvec/lib.rs.html#1114-1130' title='goto source code'>[src]</a></h4><div class='docblock'><p>Creates a <code>SmallVec</code> with <code>n</code> copies of <code>elem</code>.</p>
|
||
|
|
||
|
<div class="example-wrap"><pre class="rust rust-example-rendered">
|
||
|
<span class="kw">use</span> <span class="ident">smallvec</span>::<span class="ident">SmallVec</span>;
|
||
|
|
||
|
<span class="kw">let</span> <span class="ident">v</span> <span class="op">=</span> <span class="ident">SmallVec</span>::<span class="op"><</span>[<span class="ident">char</span>; <span class="number">128</span>]<span class="op">></span>::<span class="ident">from_elem</span>(<span class="string">'d'</span>, <span class="number">2</span>);
|
||
|
<span class="macro">assert_eq</span><span class="macro">!</span>(<span class="ident">v</span>, <span class="ident">SmallVec</span>::<span class="ident">from_buf</span>([<span class="string">'d'</span>, <span class="string">'d'</span>]));</pre></div>
|
||
|
</div></div><h2 id='implementations' class='small-section-header'>Trait Implementations<a href='#implementations' class='anchor'></a></h2><div id='implementations-list'><h3 id='impl-VecLike%3C%3CA%20as%20Array%3E%3A%3AItem%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="../smallvec/trait.VecLike.html" title="trait smallvec::VecLike">VecLike</a><<A as <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>>::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-VecLike%3C%3CA%20as%20Array%3E%3A%3AItem%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1332-1337' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.push-1' class="method hidden"><code id='push.v-1'>fn <a href='../smallvec/trait.VecLike.html#tymethod.push' class='fnname'>push</a>(&mut self, value: A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>)</code><a class='srclink' href='../src/smallvec/lib.rs.html#1334-1336' title='goto source code'>[src]</a></h4><div class='stability hidden'><div class='stab deprecated'>Deprecated: <p>Use <code>Extend</code> and <code>Deref<[T]></code> instead</p>
|
||
|
</div></div><div class='docblock hidden'><p>Append an element to the vector.</p>
|
||
|
</div></div><h3 id='impl-ExtendFromSlice%3C%3CA%20as%20Array%3E%3A%3AItem%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="../smallvec/trait.ExtendFromSlice.html" title="trait smallvec::ExtendFromSlice">ExtendFromSlice</a><<A as <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>>::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A> <span class="where fmt-newline">where<br> A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a>, </span></code><a href='#impl-ExtendFromSlice%3C%3CA%20as%20Array%3E%3A%3AItem%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1325-1329' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.extend_from_slice-1' class="method hidden"><code id='extend_from_slice.v-1'>fn <a href='../smallvec/trait.ExtendFromSlice.html#tymethod.extend_from_slice' class='fnname'>extend_from_slice</a>(&mut self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&[</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>)</code><a class='srclink' href='../src/smallvec/lib.rs.html#1326-1328' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Extends a collection from a slice of its element type</p>
|
||
|
</div></div><h3 id='impl-Send' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A> <span class="where fmt-newline">where<br> A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>, </span></code><a href='#impl-Send' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1453' title='goto source code'>[src]</a></h3><div class='impl-items'></div><h3 id='impl-Drop' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/drop/trait.Drop.html" title="trait core::ops::drop::Drop">Drop</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-Drop' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1400-1411' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.drop' class="method hidden"><code id='drop.v'>fn <a href='https://doc.rust-lang.org/nightly/core/ops/drop/trait.Drop.html#tymethod.drop' class='fnname'>drop</a>(&mut self)</code><a class='srclink' href='../src/smallvec/lib.rs.html#1401-1410' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Executes the destructor for this type. <a href="https://doc.rust-lang.org/nightly/core/ops/drop/trait.Drop.html#tymethod.drop">Read more</a></p>
|
||
|
</div></div><h3 id='impl-Eq' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.Eq.html" title="trait core::cmp::Eq">Eq</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A> <span class="where fmt-newline">where<br> A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.Eq.html" title="trait core::cmp::Eq">Eq</a>, </span></code><a href='#impl-Eq' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1431' title='goto source code'>[src]</a></h3><div class='impl-items'></div><h3 id='impl-AsMut%3C%5B%3CA%20as%20Array%3E%3A%3AItem%5D%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsMut.html" title="trait core::convert::AsMut">AsMut</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[</a><A as <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>>::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-AsMut%3C%5B%3CA%20as%20Array%3E%3A%3AItem%5D%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1161-1166' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.as_mut' class="method hidden"><code id='as_mut.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.AsMut.html#tymethod.as_mut' class='fnname'>as_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&mut [</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1163-1165' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
|
||
|
</div></div><h3 id='impl-Default' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/default/trait.Default.html" title="trait core::default::Default">Default</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-Default' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1378-1383' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.default' class="method hidden"><div class="important-traits"><div class='tooltip'>ⓘ<span class='tooltiptext'>Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></div><div class="content hidden"><h3 class="important">Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></h3><code class="content"><span class="where fmt-newline">impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a><Item = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>>> <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></code></div></div><code id='default.v'>fn <a href='https://doc.rust-lang.org/nightly/core/default/trait.Default.html#tymethod.default' class='fnname'>default</a>() -> <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a class='srclink' href='../src/smallvec/lib.rs.html#1380-1382' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Returns the "default value" for a type. <a href="https://doc.rust-lang.org/nightly/core/default/trait.Default.html#tymethod.default">Read more</a></p>
|
||
|
</div></div><h3 id='impl-Clone' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A> <span class="where fmt-newline">where<br> A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>, </span></code><a href='#impl-Clone' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1413-1421' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.clone' class="method hidden"><div class="important-traits"><div class='tooltip'>ⓘ<span class='tooltiptext'>Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></div><div class="content hidden"><h3 class="important">Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></h3><code class="content"><span class="where fmt-newline">impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a><Item = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>>> <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></code></div></div><code id='clone.v'>fn <a href='https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone' class='fnname'>clone</a>(&self) -> <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a class='srclink' href='../src/smallvec/lib.rs.html#1414-1420' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Returns a copy of the value. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone">Read more</a></p>
|
||
|
</div><h4 id='method.clone_from' class="method hidden"><code id='clone_from.v'>fn <a href='https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#method.clone_from' class='fnname'>clone_from</a>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&</a>Self)</code><span class='since' title='Stable since Rust version 1.0.0'>1.0.0</span><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/clone.rs.html#131-133' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#method.clone_from">Read more</a></p>
|
||
|
</div></div><h3 id='impl-AsRef%3C%5B%3CA%20as%20Array%3E%3A%3AItem%5D%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[</a><A as <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>>::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-AsRef%3C%5B%3CA%20as%20Array%3E%3A%3AItem%5D%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1154-1159' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.as_ref' class="method hidden"><code id='as_ref.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html#tymethod.as_ref' class='fnname'>as_ref</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&[</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1156-1158' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
|
||
|
</div></div><h3 id='impl-PartialOrd%3CSmallVec%3CA%3E%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><<a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A> <span class="where fmt-newline">where<br> A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a>, </span></code><a href='#impl-PartialOrd%3CSmallVec%3CA%3E%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1433-1438' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.partial_cmp' class="method hidden"><code id='partial_cmp.v'>fn <a href='https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp' class='fnname'>partial_cmp</a>(&self, other: &<a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>></code><a class='srclink' href='../src/smallvec/lib.rs.html#1435-1437' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>This method returns an ordering between <code>self</code> and <code>other</code> values if one exists. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp">Read more</a></p>
|
||
|
</div><h4 id='method.lt' class="method hidden"><code id='lt.v'><span class="docblock attributes">#[must_use]
|
||
|
</span>fn <a href='https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.lt' class='fnname'>lt</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&</a>Rhs) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code><span class='since' title='Stable since Rust version 1.0.0'>1.0.0</span><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#801-806' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>This method tests less than (for <code>self</code> and <code>other</code>) and is used by the <code><</code> operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.lt">Read more</a></p>
|
||
|
</div><h4 id='method.le' class="method hidden"><code id='le.v'><span class="docblock attributes">#[must_use]
|
||
|
</span>fn <a href='https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.le' class='fnname'>le</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&</a>Rhs) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code><span class='since' title='Stable since Rust version 1.0.0'>1.0.0</span><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#823-828' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>This method tests less than or equal to (for <code>self</code> and <code>other</code>) and is used by the <code><=</code> operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.le">Read more</a></p>
|
||
|
</div><h4 id='method.gt' class="method hidden"><code id='gt.v'><span class="docblock attributes">#[must_use]
|
||
|
</span>fn <a href='https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.gt' class='fnname'>gt</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&</a>Rhs) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code><span class='since' title='Stable since Rust version 1.0.0'>1.0.0</span><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#844-849' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>This method tests greater than (for <code>self</code> and <code>other</code>) and is used by the <code>></code> operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.gt">Read more</a></p>
|
||
|
</div><h4 id='method.ge' class="method hidden"><code id='ge.v'><span class="docblock attributes">#[must_use]
|
||
|
</span>fn <a href='https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge' class='fnname'>ge</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&</a>Rhs) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code><span class='since' title='Stable since Rust version 1.0.0'>1.0.0</span><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#866-871' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>This method tests greater than or equal to (for <code>self</code> and <code>other</code>) and is used by the <code>>=</code> operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge">Read more</a></p>
|
||
|
</div></div><h3 id='impl-Extend%3C%3CA%20as%20Array%3E%3A%3AItem%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.Extend.html" title="trait core::iter::traits::collect::Extend">Extend</a><<A as <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>>::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-Extend%3C%3CA%20as%20Array%3E%3A%3AItem%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1347-1370' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.extend' class="method hidden"><code id='extend.v'>fn <a href='https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.Extend.html#tymethod.extend' class='fnname'>extend</a><I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item = A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>>>(&mut self, iterable: I)</code><a class='srclink' href='../src/smallvec/lib.rs.html#1348-1369' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Extends a collection with the contents of an iterator. <a href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.Extend.html#tymethod.extend">Read more</a></p>
|
||
|
</div></div><h3 id='impl-PartialEq%3CSmallVec%3CB%3E%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>, B: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><<a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><B>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A> <span class="where fmt-newline">where<br> A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><B::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>>, </span></code><a href='#impl-PartialEq%3CSmallVec%3CB%3E%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1423-1429' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.eq' class="method hidden"><code id='eq.v'>fn <a href='https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#tymethod.eq' class='fnname'>eq</a>(&self, other: &<a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><B>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1426' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>This method tests for <code>self</code> and <code>other</code> values to be equal, and is used by <code>==</code>. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#tymethod.eq">Read more</a></p>
|
||
|
</div><h4 id='method.ne' class="method hidden"><code id='ne.v'>fn <a href='https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne' class='fnname'>ne</a>(&self, other: &<a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><B>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1428' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>This method tests for <code>!=</code>.</p>
|
||
|
</div></div><h3 id='impl-Ord' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A> <span class="where fmt-newline">where<br> A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>, </span></code><a href='#impl-Ord' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1440-1445' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.cmp' class="method hidden"><code id='cmp.v'>fn <a href='https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#tymethod.cmp' class='fnname'>cmp</a>(&self, other: &<a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1442-1444' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>This method returns an <code>Ordering</code> between <code>self</code> and <code>other</code>. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#tymethod.cmp">Read more</a></p>
|
||
|
</div><h4 id='method.max' class="method hidden"><code id='max.v'>fn <a href='https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.max' class='fnname'>max</a>(self, other: Self) -> Self</code><span class='since' title='Stable since Rust version 1.21.0'>1.21.0</span><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#571-574' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Compares and returns the maximum of two values. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.max">Read more</a></p>
|
||
|
</div><h4 id='method.min' class="method hidden"><code id='min.v'>fn <a href='https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.min' class='fnname'>min</a>(self, other: Self) -> Self</code><span class='since' title='Stable since Rust version 1.21.0'>1.21.0</span><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#588-591' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Compares and returns the minimum of two values. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.min">Read more</a></p>
|
||
|
</div><h4 id='method.clamp' class="method hidden"><code id='clamp.v'>fn <a href='https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.clamp' class='fnname'>clamp</a>(self, min: Self, max: Self) -> Self</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#612-622' title='goto source code'>[src]</a></h4><div class='stability hidden'><div class='stab unstable'><span class='emoji'>🔬</span> This is a nightly-only experimental API. (<code>clamp</code>)</div></div><div class='docblock hidden'><p>Restrict a value to a certain interval. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.clamp">Read more</a></p>
|
||
|
</div></div><h3 id='impl-IntoIterator' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-IntoIterator' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1513-1528' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.IntoIter' class="type"><code id='IntoIter.t'>type <a href='https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter' class="type">IntoIter</a> = <a class="struct" href="../smallvec/struct.IntoIter.html" title="struct smallvec::IntoIter">IntoIter</a><A></code></h4><div class='docblock'><p>Which kind of iterator are we turning this into?</p>
|
||
|
</div><h4 id='associatedtype.Item' class="type"><code id='Item.t'>type <a href='https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.Item' class="type">Item</a> = A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a></code></h4><div class='docblock'><p>The type of the elements being iterated over.</p>
|
||
|
</div><h4 id='method.into_iter' class="method hidden"><code id='into_iter.v'>fn <a href='https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#tymethod.into_iter' class='fnname'>into_iter</a>(self) -> Self::<a class="type" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" title="type core::iter::traits::collect::IntoIterator::IntoIter">IntoIter</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1516-1527' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Creates an iterator from a value. <a href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#tymethod.into_iter">Read more</a></p>
|
||
|
</div></div><h3 id='impl-IntoIterator-1' class='impl'><code class='in-band'>impl<'a, A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a> for &'a <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-IntoIterator-1' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1530-1536' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.IntoIter-1' class="type"><code id='IntoIter.t-1'>type <a href='https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter' class="type">IntoIter</a> = <a class="struct" href="https://doc.rust-lang.org/nightly/core/slice/struct.Iter.html" title="struct core::slice::Iter">Iter</a><'a, A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>></code></h4><div class='docblock'><p>Which kind of iterator are we turning this into?</p>
|
||
|
</div><h4 id='associatedtype.Item-1' class="type"><code id='Item.t-1'>type <a href='https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.Item' class="type">Item</a> = &'a A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a></code></h4><div class='docblock'><p>The type of the elements being iterated over.</p>
|
||
|
</div><h4 id='method.into_iter-1' class="method hidden"><code id='into_iter.v-1'>fn <a href='https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#tymethod.into_iter' class='fnname'>into_iter</a>(self) -> Self::<a class="type" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" title="type core::iter::traits::collect::IntoIterator::IntoIter">IntoIter</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1533-1535' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Creates an iterator from a value. <a href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#tymethod.into_iter">Read more</a></p>
|
||
|
</div></div><h3 id='impl-IntoIterator-2' class='impl'><code class='in-band'>impl<'a, A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a> for &'a mut <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-IntoIterator-2' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1538-1544' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.IntoIter-2' class="type"><code id='IntoIter.t-2'>type <a href='https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter' class="type">IntoIter</a> = <a class="struct" href="https://doc.rust-lang.org/nightly/core/slice/struct.IterMut.html" title="struct core::slice::IterMut">IterMut</a><'a, A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>></code></h4><div class='docblock'><p>Which kind of iterator are we turning this into?</p>
|
||
|
</div><h4 id='associatedtype.Item-2' class="type"><code id='Item.t-2'>type <a href='https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.Item' class="type">Item</a> = &'a mut A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a></code></h4><div class='docblock'><p>The type of the elements being iterated over.</p>
|
||
|
</div><h4 id='method.into_iter-2' class="method hidden"><code id='into_iter.v-2'>fn <a href='https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#tymethod.into_iter' class='fnname'>into_iter</a>(self) -> Self::<a class="type" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter" title="type core::iter::traits::collect::IntoIterator::IntoIter">IntoIter</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1541-1543' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Creates an iterator from a value. <a href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#tymethod.into_iter">Read more</a></p>
|
||
|
</div></div><h3 id='impl-From%3C%26%27a%20%5B%3CA%20as%20Array%3E%3A%3AItem%5D%3E' class='impl'><code class='in-band'>impl<'a, A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&'a [</a><A as <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>>::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A> <span class="where fmt-newline">where<br> A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>, </span></code><a href='#impl-From%3C%26%27a%20%5B%3CA%20as%20Array%3E%3A%3AItem%5D%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1272-1284' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.from' class="method hidden"><div class="important-traits"><div class='tooltip'>ⓘ<span class='tooltiptext'>Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></div><div class="content hidden"><h3 class="important">Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></h3><code class="content"><span class="where fmt-newline">impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a><Item = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>>> <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></code></div></div><code id='from.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from' class='fnname'>from</a>(slice: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&'a [</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>) -> <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a class='srclink' href='../src/smallvec/lib.rs.html#1275-1277' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
|
||
|
</div></div><h3 id='impl-From%3CVec%3C%3CA%20as%20Array%3E%3A%3AItem%3E%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<A as <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>>::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-From%3CVec%3C%3CA%20as%20Array%3E%3A%3AItem%3E%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1286-1291' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.from-1' class="method hidden"><div class="important-traits"><div class='tooltip'>ⓘ<span class='tooltiptext'>Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></div><div class="content hidden"><h3 class="important">Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></h3><code class="content"><span class="where fmt-newline">impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a><Item = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>>> <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></code></div></div><code id='from.v-1'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from' class='fnname'>from</a>(vec: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>>) -> <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a class='srclink' href='../src/smallvec/lib.rs.html#1288-1290' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
|
||
|
</div></div><h3 id='impl-From%3CA%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a><A> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-From%3CA%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1293-1298' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.from-2' class="method hidden"><div class="important-traits"><div class='tooltip'>ⓘ<span class='tooltiptext'>Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></div><div class="content hidden"><h3 class="important">Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></h3><code class="content"><span class="where fmt-newline">impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a><Item = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>>> <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></code></div></div><code id='from.v-2'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from' class='fnname'>from</a>(array: A) -> <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a class='srclink' href='../src/smallvec/lib.rs.html#1295-1297' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
|
||
|
</div></div><h3 id='impl-DerefMut' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.DerefMut.html" title="trait core::ops::deref::DerefMut">DerefMut</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-DerefMut' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1144-1152' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.deref_mut' class="method hidden"><code id='deref_mut.v'>fn <a href='https://doc.rust-lang.org/nightly/core/ops/deref/trait.DerefMut.html#tymethod.deref_mut' class='fnname'>deref_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&mut [</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1146-1151' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Mutably dereferences the value.</p>
|
||
|
</div></div><h3 id='impl-Hash' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html" title="trait core::hash::Hash">Hash</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A> <span class="where fmt-newline">where<br> A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html" title="trait core::hash::Hash">Hash</a>, </span></code><a href='#impl-Hash' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1447-1451' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.hash' class="method hidden"><code id='hash.v'>fn <a href='https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html#tymethod.hash' class='fnname'>hash</a><H: <a class="trait" href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher">Hasher</a>>(&self, state: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut </a>H)</code><a class='srclink' href='../src/smallvec/lib.rs.html#1448-1450' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Feeds this value into the given [<code>Hasher</code>]. <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html#tymethod.hash">Read more</a></p>
|
||
|
</div><h4 id='method.hash_slice' class="method hidden"><code id='hash_slice.v'>fn <a href='https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html#method.hash_slice' class='fnname'>hash_slice</a><H>(data: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&[Self]</a>, state: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut </a>H) <span class="where fmt-newline">where<br> H: <a class="trait" href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher">Hasher</a>, </span></code><span class='since' title='Stable since Rust version 1.3.0'>1.3.0</span><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/hash/mod.rs.html#192-198' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Feeds a slice of this type into the given [<code>Hasher</code>]. <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html#method.hash_slice">Read more</a></p>
|
||
|
</div></div><h3 id='impl-Deref' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-Deref' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1133-1142' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Target' class="type"><code id='Target.t'>type <a href='https://doc.rust-lang.org/nightly/core/ops/deref/trait.Deref.html#associatedtype.Target' class="type">Target</a> = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code></h4><div class='docblock'><p>The resulting type after dereferencing.</p>
|
||
|
</div><h4 id='method.deref' class="method hidden"><code id='deref.v'>fn <a href='https://doc.rust-lang.org/nightly/core/ops/deref/trait.Deref.html#tymethod.deref' class='fnname'>deref</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&[</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1136-1141' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Dereferences the value.</p>
|
||
|
</div></div><h3 id='impl-Index%3Cusize%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-Index%3Cusize%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1302-1308' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Output' class="type"><code id='Output.t'>type <a href='https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#associatedtype.Output' class="type">Output</a> = A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a></code></h4><div class='docblock'><p>The returned type after indexing.</p>
|
||
|
</div><h4 id='method.index' class="method hidden"><code id='index.v'>fn <a href='https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#tymethod.index' class='fnname'>index</a>(&self, index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -> &A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1305-1307' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the indexing (<code>container[index]</code>) operation.</p>
|
||
|
</div></div><h3 id='impl-Index%3CRange%3Cusize%3E%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a><<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.Range.html" title="struct core::ops::range::Range">Range</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-Index%3CRange%3Cusize%3E%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1302-1308' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Output-1' class="type"><code id='Output.t-1'>type <a href='https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#associatedtype.Output' class="type">Output</a> = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code></h4><div class='docblock'><p>The returned type after indexing.</p>
|
||
|
</div><h4 id='method.index-1' class="method hidden"><code id='index.v-1'>fn <a href='https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#tymethod.index' class='fnname'>index</a>(&self, index: <a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.Range.html" title="struct core::ops::range::Range">Range</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&[</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1305-1307' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the indexing (<code>container[index]</code>) operation.</p>
|
||
|
</div></div><h3 id='impl-Index%3CRangeFrom%3Cusize%3E%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a><<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeFrom.html" title="struct core::ops::range::RangeFrom">RangeFrom</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-Index%3CRangeFrom%3Cusize%3E%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1302-1308' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Output-2' class="type"><code id='Output.t-2'>type <a href='https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#associatedtype.Output' class="type">Output</a> = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code></h4><div class='docblock'><p>The returned type after indexing.</p>
|
||
|
</div><h4 id='method.index-2' class="method hidden"><code id='index.v-2'>fn <a href='https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#tymethod.index' class='fnname'>index</a>(&self, index: <a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeFrom.html" title="struct core::ops::range::RangeFrom">RangeFrom</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&[</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1305-1307' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the indexing (<code>container[index]</code>) operation.</p>
|
||
|
</div></div><h3 id='impl-Index%3CRangeTo%3Cusize%3E%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a><<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeTo.html" title="struct core::ops::range::RangeTo">RangeTo</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-Index%3CRangeTo%3Cusize%3E%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1302-1308' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Output-3' class="type"><code id='Output.t-3'>type <a href='https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#associatedtype.Output' class="type">Output</a> = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code></h4><div class='docblock'><p>The returned type after indexing.</p>
|
||
|
</div><h4 id='method.index-3' class="method hidden"><code id='index.v-3'>fn <a href='https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#tymethod.index' class='fnname'>index</a>(&self, index: <a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeTo.html" title="struct core::ops::range::RangeTo">RangeTo</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&[</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1305-1307' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the indexing (<code>container[index]</code>) operation.</p>
|
||
|
</div></div><h3 id='impl-Index%3CRangeFull%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html" title="trait core::ops::index::Index">Index</a><<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeFull.html" title="struct core::ops::range::RangeFull">RangeFull</a>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-Index%3CRangeFull%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1302-1308' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Output-4' class="type"><code id='Output.t-4'>type <a href='https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#associatedtype.Output' class="type">Output</a> = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code></h4><div class='docblock'><p>The returned type after indexing.</p>
|
||
|
</div><h4 id='method.index-4' class="method hidden"><code id='index.v-4'>fn <a href='https://doc.rust-lang.org/nightly/core/ops/index/trait.Index.html#tymethod.index' class='fnname'>index</a>(&self, index: <a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeFull.html" title="struct core::ops::range::RangeFull">RangeFull</a>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&[</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1305-1307' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the indexing (<code>container[index]</code>) operation.</p>
|
||
|
</div></div><h3 id='impl-IndexMut%3Cusize%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.IndexMut.html" title="trait core::ops::index::IndexMut">IndexMut</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-IndexMut%3Cusize%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1310-1315' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.index_mut' class="method hidden"><code id='index_mut.v'>fn <a href='https://doc.rust-lang.org/nightly/core/ops/index/trait.IndexMut.html#tymethod.index_mut' class='fnname'>index_mut</a>(&mut self, index: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -> &mut A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1312-1314' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the mutable indexing (<code>container[index]</code>) operation.</p>
|
||
|
</div></div><h3 id='impl-IndexMut%3CRange%3Cusize%3E%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.IndexMut.html" title="trait core::ops::index::IndexMut">IndexMut</a><<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.Range.html" title="struct core::ops::range::Range">Range</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-IndexMut%3CRange%3Cusize%3E%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1310-1315' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.index_mut-1' class="method hidden"><code id='index_mut.v-1'>fn <a href='https://doc.rust-lang.org/nightly/core/ops/index/trait.IndexMut.html#tymethod.index_mut' class='fnname'>index_mut</a>(&mut self, index: <a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.Range.html" title="struct core::ops::range::Range">Range</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&mut [</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1312-1314' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the mutable indexing (<code>container[index]</code>) operation.</p>
|
||
|
</div></div><h3 id='impl-IndexMut%3CRangeFrom%3Cusize%3E%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.IndexMut.html" title="trait core::ops::index::IndexMut">IndexMut</a><<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeFrom.html" title="struct core::ops::range::RangeFrom">RangeFrom</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-IndexMut%3CRangeFrom%3Cusize%3E%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1310-1315' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.index_mut-2' class="method hidden"><code id='index_mut.v-2'>fn <a href='https://doc.rust-lang.org/nightly/core/ops/index/trait.IndexMut.html#tymethod.index_mut' class='fnname'>index_mut</a>(&mut self, index: <a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeFrom.html" title="struct core::ops::range::RangeFrom">RangeFrom</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&mut [</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1312-1314' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the mutable indexing (<code>container[index]</code>) operation.</p>
|
||
|
</div></div><h3 id='impl-IndexMut%3CRangeTo%3Cusize%3E%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.IndexMut.html" title="trait core::ops::index::IndexMut">IndexMut</a><<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeTo.html" title="struct core::ops::range::RangeTo">RangeTo</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-IndexMut%3CRangeTo%3Cusize%3E%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1310-1315' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.index_mut-3' class="method hidden"><code id='index_mut.v-3'>fn <a href='https://doc.rust-lang.org/nightly/core/ops/index/trait.IndexMut.html#tymethod.index_mut' class='fnname'>index_mut</a>(&mut self, index: <a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeTo.html" title="struct core::ops::range::RangeTo">RangeTo</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&mut [</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1312-1314' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the mutable indexing (<code>container[index]</code>) operation.</p>
|
||
|
</div></div><h3 id='impl-IndexMut%3CRangeFull%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/index/trait.IndexMut.html" title="trait core::ops::index::IndexMut">IndexMut</a><<a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeFull.html" title="struct core::ops::range::RangeFull">RangeFull</a>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-IndexMut%3CRangeFull%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1310-1315' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.index_mut-4' class="method hidden"><code id='index_mut.v-4'>fn <a href='https://doc.rust-lang.org/nightly/core/ops/index/trait.IndexMut.html#tymethod.index_mut' class='fnname'>index_mut</a>(&mut self, index: <a class="struct" href="https://doc.rust-lang.org/nightly/core/ops/range/struct.RangeFull.html" title="struct core::ops::range::RangeFull">RangeFull</a>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&mut [</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1312-1314' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the mutable indexing (<code>container[index]</code>) operation.</p>
|
||
|
</div></div><h3 id='impl-Debug' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A> <span class="where fmt-newline">where<br> A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a>, </span></code><a href='#impl-Debug' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1372-1376' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.fmt' class="method hidden"><code id='fmt.v'>fn <a href='https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt' class='fnname'>fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a>) -> <a class="type" href="https://doc.rust-lang.org/nightly/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1373-1375' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></p>
|
||
|
</div></div><h3 id='impl-FromIterator%3C%3CA%20as%20Array%3E%3A%3AItem%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.FromIterator.html" title="trait core::iter::traits::collect::FromIterator">FromIterator</a><<A as <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>>::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-FromIterator%3C%3CA%20as%20Array%3E%3A%3AItem%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1339-1345' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.from_iter' class="method hidden"><div class="important-traits"><div class='tooltip'>ⓘ<span class='tooltiptext'>Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></div><div class="content hidden"><h3 class="important">Important traits for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></h3><code class="content"><span class="where fmt-newline">impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a><Item = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>>> <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></span></code></div></div><code id='from_iter.v'>fn <a href='https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.FromIterator.html#tymethod.from_iter' class='fnname'>from_iter</a><I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item = A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>>>(iterable: I) -> <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a class='srclink' href='../src/smallvec/lib.rs.html#1340-1344' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Creates a value from an iterator. <a href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.FromIterator.html#tymethod.from_iter">Read more</a></p>
|
||
|
</div></div><h3 id='impl-BorrowMut%3C%5B%3CA%20as%20Array%3E%3A%3AItem%5D%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[</a><A as <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>>::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-BorrowMut%3C%5B%3CA%20as%20Array%3E%3A%3AItem%5D%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1175-1180' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.borrow_mut' class="method hidden"><code id='borrow_mut.v'>fn <a href='https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut' class='fnname'>borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&mut [</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1177-1179' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></p>
|
||
|
</div></div><h3 id='impl-Borrow%3C%5B%3CA%20as%20Array%3E%3A%3AItem%5D%3E' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>> <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">[</a><A as <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>>::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-Borrow%3C%5B%3CA%20as%20Array%3E%3A%3AItem%5D%3E' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1168-1173' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.borrow' class="method hidden"><code id='borrow.v'>fn <a href='https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow' class='fnname'>borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&[</a>A::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a></code><a class='srclink' href='../src/smallvec/lib.rs.html#1170-1172' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></p>
|
||
|
</div></div><h3 id='impl-Write' class='impl'><code class='in-band'>impl<A: <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a><Item = <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>>> <a class="trait" href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html" title="trait std::io::Write">Write</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A></code><a href='#impl-Write' class='anchor'></a><a class='srclink' href='../src/smallvec/lib.rs.html#1183-1200' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.write' class="method hidden"><code id='write.v'>fn <a href='https://doc.rust-lang.org/nightly/std/io/trait.Write.html#tymethod.write' class='fnname'>write</a>(&mut self, buf: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&[</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>) -> <a class="type" href="https://doc.rust-lang.org/nightly/std/io/error/type.Result.html" title="type std::io::error::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>></code><a class='srclink' href='../src/smallvec/lib.rs.html#1185-1188' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Write a buffer into this writer, returning how many bytes were written. <a href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html#tymethod.write">Read more</a></p>
|
||
|
</div><h4 id='method.write_all' class="method hidden"><code id='write_all.v'>fn <a href='https://doc.rust-lang.org/nightly/std/io/trait.Write.html#method.write_all' class='fnname'>write_all</a>(&mut self, buf: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&[</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>) -> <a class="type" href="https://doc.rust-lang.org/nightly/std/io/error/type.Result.html" title="type std::io::error::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>></code><a class='srclink' href='../src/smallvec/lib.rs.html#1191-1194' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Attempts to write an entire buffer into this writer. <a href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html#method.write_all">Read more</a></p>
|
||
|
</div><h4 id='method.flush' class="method hidden"><code id='flush.v'>fn <a href='https://doc.rust-lang.org/nightly/std/io/trait.Write.html#tymethod.flush' class='fnname'>flush</a>(&mut self) -> <a class="type" href="https://doc.rust-lang.org/nightly/std/io/error/type.Result.html" title="type std::io::error::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>></code><a class='srclink' href='../src/smallvec/lib.rs.html#1197-1199' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Flush this output stream, ensuring that all intermediately buffered contents reach their destination. <a href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html#tymethod.flush">Read more</a></p>
|
||
|
</div><h4 id='method.write_vectored' class="method hidden"><code id='write_vectored.v'>fn <a href='https://doc.rust-lang.org/nightly/std/io/trait.Write.html#method.write_vectored' class='fnname'>write_vectored</a>(&mut self, bufs: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">&[</a><a class="struct" href="https://doc.rust-lang.org/nightly/std/io/struct.IoSlice.html" title="struct std::io::IoSlice">IoSlice</a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.slice.html">]</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>, <a class="struct" href="https://doc.rust-lang.org/nightly/std/io/error/struct.Error.html" title="struct std::io::error::Error">Error</a>></code><span class='since' title='Stable since Rust version 1.36.0'>1.36.0</span><a class='srclink' href='https://doc.rust-lang.org/nightly/src/std/io/mod.rs.html#1278-1280' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Like <code>write</code>, except that it writes from a slice of buffers. <a href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html#method.write_vectored">Read more</a></p>
|
||
|
</div><h4 id='method.write_fmt' class="method hidden"><code id='write_fmt.v'>fn <a href='https://doc.rust-lang.org/nightly/std/io/trait.Write.html#method.write_fmt' class='fnname'>write_fmt</a>(&mut self, fmt: <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Arguments.html" title="struct core::fmt::Arguments">Arguments</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="struct" href="https://doc.rust-lang.org/nightly/std/io/error/struct.Error.html" title="struct std::io::error::Error">Error</a>></code><span class='since' title='Stable since Rust version 1.0.0'>1.0.0</span><a class='srclink' href='https://doc.rust-lang.org/nightly/src/std/io/mod.rs.html#1391-1423' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Writes a formatted string into this writer, returning any error encountered. <a href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html#method.write_fmt">Read more</a></p>
|
||
|
</div><h4 id='method.by_ref' class="method hidden"><code id='by_ref.v'>fn <a href='https://doc.rust-lang.org/nightly/std/io/trait.Write.html#method.by_ref' class='fnname'>by_ref</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut </a>Self</code><span class='since' title='Stable since Rust version 1.0.0'>1.0.0</span><a class='srclink' href='https://doc.rust-lang.org/nightly/src/std/io/mod.rs.html#1447' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Creates a "by reference" adaptor for this instance of <code>Write</code>. <a href="https://doc.rust-lang.org/nightly/std/io/trait.Write.html#method.by_ref">Read more</a></p>
|
||
|
</div></div></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'><h3 id='impl-Unpin' class='impl'><code class='in-band'>impl<A> <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A> <span class="where fmt-newline">where<br> A: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>, </span></code><a href='#impl-Unpin' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-Sync' class='impl'><code class='in-band'>impl<A> <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A> <span class="where fmt-newline">where<br> A: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>, </span></code><a href='#impl-Sync' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-UnwindSafe' class='impl'><code class='in-band'>impl<A> <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.UnwindSafe.html" title="trait std::panic::UnwindSafe">UnwindSafe</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A> <span class="where fmt-newline">where<br> A: <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.UnwindSafe.html" title="trait std::panic::UnwindSafe">UnwindSafe</a>,<br> <A as <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>>::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.RefUnwindSafe.html" title="trait std::panic::RefUnwindSafe">RefUnwindSafe</a>, </span></code><a href='#impl-UnwindSafe' class='anchor'></a></h3><div class='impl-items'></div><h3 id='impl-RefUnwindSafe' class='impl'><code class='in-band'>impl<A> <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.RefUnwindSafe.html" title="trait std::panic::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="../smallvec/struct.SmallVec.html" title="struct smallvec::SmallVec">SmallVec</a><A> <span class="where fmt-newline">where<br> A: <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.RefUnwindSafe.html" title="trait std::panic::RefUnwindSafe">RefUnwindSafe</a>,<br> <A as <a class="trait" href="../smallvec/trait.Array.html" title="trait smallvec::Array">Array</a>>::<a class="type" href="../smallvec/trait.Array.html#associatedtype.Item" title="type smallvec::Array::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.RefUnwindSafe.html" title="trait std::panic::RefUnwindSafe">RefUnwindSafe</a>, </span></code><a href='#impl-RefUnwindSafe' class='anchor'></a></h3><div class='impl-items'></div></div><h2 id='blanket-implementations' class='small-section-header'>Blanket Implementations<a href='#blanket-implementations' class='anchor'></a></h2><div id='blanket-implementations-list'><h3 id='impl-ToOwned' class='impl'><code class='in-band'>impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T <span class="where fmt-newline">where<br> T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.
|
||
|
</div><h4 id='method.to_owned' class="method hidden"><code id='to_owned.v'>fn <a href='https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#tymethod.to_owned' class='fnname'>to_owned</a>(&self) -> T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#85-87' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></p>
|
||
|
</div><h4 id='method.clone_into' class="method hidden"><code id='clone_into.v'>fn <a href='https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#method.clone_into' class='fnname'>clone_into</a>(&self, target: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut </a>T)</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#89-91' title='goto source code'>[src]</a></h4><div class='stability hidden'><div class='stab unstable'><details><summary><span class='emoji'>🔬</span> This is a nightly-only experimental API. (<code>toowned_clone_into</code>)</summary><p>recently added</p>
|
||
|
</details></div></div><div class='docblock hidden'><p>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></p>
|
||
|
</div></div><h3 id='impl-Into%3CU%3E' class='impl'><code class='in-band'>impl<T, U> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U> for T <span class="where fmt-newline">where<br> U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a><T>, </span></code><a href='#impl-Into%3CU%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#544-549' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.into' class="method hidden"><code id='into.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.Into.html#tymethod.into' class='fnname'>into</a>(self) -> U</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#546-548' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
|
||
|
</div></div><h3 id='impl-IntoIterator-3' class='impl'><code class='in-band'>impl<I> <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a> for I <span class="where fmt-newline">where<br> I: <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>, </span></code><a href='#impl-IntoIterator-3' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/iter/traits/collect.rs.html#242-249' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Item-3' class="type"><code id='Item.t-3'>type <a href='https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.Item' class="type">Item</a> = <I as <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html" title="trait core::iter::traits::iterator::Iterator">Iterator</a>>::<a class="type" href="https://doc.rust-lang.org/nightly/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item" title="type core::iter::traits::iterator::Iterator::Item">Item</a></code></h4><div class='docblock'><p>The type of the elements being iterated over.</p>
|
||
|
</div><h4 id='associatedtype.IntoIter-3' class="type"><code id='IntoIter.t-3'>type <a href='https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#associatedtype.IntoIter' class="type">IntoIter</a> = I</code></h4><div class='docblock'><p>Which kind of iterator are we turning this into?</p>
|
||
|
</div><h4 id='method.into_iter-3' class="method hidden"><code id='into_iter.v-3'>fn <a href='https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#tymethod.into_iter' class='fnname'>into_iter</a>(self) -> I</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/iter/traits/collect.rs.html#246-248' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Creates an iterator from a value. <a href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html#tymethod.into_iter">Read more</a></p>
|
||
|
</div></div><h3 id='impl-From%3CT%3E' class='impl'><code class='in-band'>impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</code><a href='#impl-From%3CT%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#553-555' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.from-3' class="method hidden"><code id='from.v-3'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from' class='fnname'>from</a>(t: T) -> T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#554' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
|
||
|
</div></div><h3 id='impl-TryFrom%3CU%3E' class='impl'><code class='in-band'>impl<T, U> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U> for T <span class="where fmt-newline">where<br> U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>, </span></code><a href='#impl-TryFrom%3CU%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#572-578' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Error' class="type"><code id='Error.t'>type <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error' class="type">Error</a> = <a class="enum" href="https://doc.rust-lang.org/nightly/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></code></h4><div class='docblock'><p>The type returned in the event of a conversion error.</p>
|
||
|
</div><h4 id='method.try_from' class="method hidden"><code id='try_from.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#tymethod.try_from' class='fnname'>try_from</a>(value: U) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, <T as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U>>::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#575-577' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
|
||
|
</div></div><h3 id='impl-TryInto%3CU%3E' class='impl'><code class='in-band'>impl<T, U> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a><U> for T <span class="where fmt-newline">where<br> U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>, </span></code><a href='#impl-TryInto%3CU%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#560-567' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='associatedtype.Error-1' class="type"><code id='Error.t-1'>type <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#associatedtype.Error' class="type">Error</a> = <U as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></code></h4><div class='docblock'><p>The type returned in the event of a conversion error.</p>
|
||
|
</div><h4 id='method.try_into' class="method hidden"><code id='try_into.v'>fn <a href='https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#tymethod.try_into' class='fnname'>try_into</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><U, <U as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/convert.rs.html#564-566' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
|
||
|
</div></div><h3 id='impl-BorrowMut%3CT%3E' class='impl'><code class='in-band'>impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T <span class="where fmt-newline">where<br> T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>, </span></code><a href='#impl-BorrowMut%3CT%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#218-220' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.borrow_mut-1' class="method hidden"><code id='borrow_mut.v-1'>fn <a href='https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut' class='fnname'>borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut </a>T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#219' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></p>
|
||
|
</div></div><h3 id='impl-Borrow%3CT%3E' class='impl'><code class='in-band'>impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T <span class="where fmt-newline">where<br> T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>, </span></code><a href='#impl-Borrow%3CT%3E' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#213-215' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.borrow-1' class="method hidden"><code id='borrow.v-1'>fn <a href='https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow' class='fnname'>borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&</a>T</code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#214' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></p>
|
||
|
</div></div><h3 id='impl-Any' class='impl'><code class='in-band'>impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T <span class="where fmt-newline">where<br> T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>, </span></code><a href='#impl-Any' class='anchor'></a><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/any.rs.html#100-102' title='goto source code'>[src]</a></h3><div class='impl-items'><h4 id='method.type_id' class="method hidden"><code id='type_id.v'>fn <a href='https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id' class='fnname'>type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/nightly/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></code><a class='srclink' href='https://doc.rust-lang.org/nightly/src/core/any.rs.html#101' title='goto source code'>[src]</a></h4><div class='docblock hidden'><p>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id">Read more</a></p>
|
||
|
</div></div></div></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd>↑</kbd></dt><dd>Move up in search results</dd><dt><kbd>↓</kbd></dt><dd>Move down in search results</dd><dt><kbd>↹</kbd></dt><dd>Switch tab</dd><dt><kbd>⏎</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../";window.currentCrate = "smallvec";</script><script src="../aliases.js"></script><script src="../main.js"></script><script defer src="../search-index.js"></script></body></html>
|