<main><divclass="width-limiter"><navclass="sub"><formclass="search-form"><span></span><divid="sidebar-button"tabindex="-1"><ahref="../../../regex_automata/all.html"title="show sidebar"></a></div><inputclass="search-input"name="search"aria-label="Run search in the documentation"autocomplete="off"spellcheck="false"placeholder="Click or press ‘S’ to search, ‘?’ for more options…"type="search"><divid="help-button"tabindex="-1"><ahref="../../../help.html"title="help">?</a></div><divid="settings-menu"tabindex="-1"><ahref="../../../settings.html"title="settings"><imgwidth="22"height="22"alt="Change settings"src="../../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><sectionid="main-content"class="content"><divclass="main-heading"><h1>Enum <ahref="../../index.html">regex_automata</a>::<wbr><ahref="../index.html">util</a>::<wbr><ahref="index.html">look</a>::<wbr><aclass="enum"href="#">Look</a><buttonid="copy-path"title="Copy item path to clipboard"><imgsrc="../../../static.files/clipboard-7571035ce49a181d.svg"width="19"height="18"alt="Copy item path"></button></h1><spanclass="out-of-band"><aclass="src"href="../../../src/regex_automata/util/look.rs.html#62-135">source</a> · <buttonid="toggle-all-docs"title="collapse all docs">[<span>−</span>]</button></span></div><preclass="rust item-decl"><code>pub enum Look {
<p>An assertion matches at a position between characters in a haystack.
Namely, it does not actually “consume” any input as most parts of a regular
expression do. Assertions are a way of stating that some property must be
true at a particular point during matching.</p>
<p>For example, <code>(?m)^[a-z]+$</code> is a pattern that:</p>
<ul>
<li>Scans the haystack for a position at which <code>(?m:^)</code> is satisfied. That
occurs at either the beginning of the haystack, or immediately following
a <code>\n</code> character.</li>
<li>Looks for one or more occurrences of <code>[a-z]</code>.</li>
<li>Once <code>[a-z]+</code> has matched as much as it can, an overall match is only
reported when <code>[a-z]+</code> stops just before a <code>\n</code>.</li>
</ul>
<p>So in this case, <code>abc</code> and <code>\nabc\n</code> match, but <code>\nabc1\n</code> does not.</p>
<p>Assertions are also called “look-around,” “look-behind” and “look-ahead.”
Specifically, some assertions are look-behind (like <code>^</code>), other assertions
are look-ahead (like <code>$</code>) and yet other assertions are both look-ahead and
look-behind (like <code>\b</code>).</p>
<h2id="assertions-in-an-nfa"><ahref="#assertions-in-an-nfa">Assertions in an NFA</a></h2>
<p>An assertion in a <ahref="../../nfa/thompson/struct.NFA.html"title="struct regex_automata::nfa::thompson::NFA"><code>thompson::NFA</code></a> can be
thought of as a conditional epsilon transition. That is, a matching engine
like the <ahref="../../nfa/thompson/pikevm/struct.PikeVM.html"title="struct regex_automata::nfa::thompson::pikevm::PikeVM"><code>PikeVM</code></a> only permits
moving through conditional epsilon transitions when their condition
is satisfied at whatever position the <code>PikeVM</code> is currently at in the
haystack.</p>
<p>How assertions are handled in a <code>DFA</code> is trickier, since a DFA does not
have epsilon transitions at all. In this case, they are compiled into the
automaton itself, at the expense of more states than what would be required
without an assertion.</p>
</div></details><h2id="variants"class="variants section-header">Variants<ahref="#variants"class="anchor">§</a></h2><divclass="variants"><sectionid="variant.Start"class="variant"><ahref="#variant.Start"class="anchor">§</a><h3class="code-header">Start = 1</h3></section><divclass="docblock"><p>Match the beginning of text. Specifically, this matches at the starting
position of the input.</p>
</div><sectionid="variant.End"class="variant"><ahref="#variant.End"class="anchor">§</a><h3class="code-header">End = 2</h3></section><divclass="docblock"><p>Match the end of text. Specifically, this matches at the ending
position of the input.</p>
</div><sectionid="variant.StartLF"class="variant"><ahref="#variant.StartLF"class="anchor">§</a><h3class="code-header">StartLF = 4</h3></section><divclass="docblock"><p>Match the beginning of a line or the beginning of text. Specifically,
this matches at the starting position of the input, or at the position
immediately following a <code>\n</code> character.</p>
</div><sectionid="variant.EndLF"class="variant"><ahref="#variant.EndLF"class="anchor">§</a><h3class="code-header">EndLF = 8</h3></section><divclass="docblock"><p>Match the end of a line or the end of text. Specifically, this matches
at the end position of the input, or at the position immediately
preceding a <code>\n</code> character.</p>
</div><sectionid="variant.StartCRLF"class="variant"><ahref="#variant.StartCRLF"class="anchor">§</a><h3class="code-header">StartCRLF = 16</h3></section><divclass="docblock"><p>Match the beginning of a line or the beginning of text. Specifically,
this matches at the starting position of the input, or at the position
immediately following either a <code>\r</code> or <code>\n</code> character, but never after
a <code>\r</code> when a <code>\n</code> follows.</p>
</div><sectionid="variant.EndCRLF"class="variant"><ahref="#variant.EndCRLF"class="anchor">§</a><h3class="code-header">EndCRLF = 32</h3></section><divclass="docblock"><p>Match the end of a line or the end of text. Specifically, this matches
at the end position of the input, or at the position immediately
preceding a <code>\r</code> or <code>\n</code> character, but never before a <code>\n</code> when a <code>\r</code>
precedes it.</p>
</div><sectionid="variant.WordAscii"class="variant"><ahref="#variant.WordAscii"class="anchor">§</a><h3class="code-header">WordAscii = 64</h3></section><divclass="docblock"><p>Match an ASCII-only word boundary. That is, this matches a position
where the left adjacent character and right adjacent character
correspond to a word and non-word or a non-word and word character.</p>
</div><sectionid="variant.WordAsciiNegate"class="variant"><ahref="#variant.WordAsciiNegate"class="anchor">§</a><h3class="code-header">WordAsciiNegate = 128</h3></section><divclass="docblock"><p>Match an ASCII-only negation of a word boundary.</p>
</div><sectionid="variant.WordUnicode"class="variant"><ahref="#variant.WordUnicode"class="anchor">§</a><h3class="code-header">WordUnicode = 256</h3></section><divclass="docblock"><p>Match a Unicode-aware word boundary. That is, this matches a position
where the left adjacent character and right adjacent character
correspond to a word and non-word or a non-word and word character.</p>
</div><sectionid="variant.WordUnicodeNegate"class="variant"><ahref="#variant.WordUnicodeNegate"class="anchor">§</a><h3class="code-header">WordUnicodeNegate = 512</h3></section><divclass="docblock"><p>Match a Unicode-aware negation of a word boundary.</p>
</div><sectionid="variant.WordStartAscii"class="variant"><ahref="#variant.WordStartAscii"class="anchor">§</a><h3class="code-header">WordStartAscii = 1_024</h3></section><divclass="docblock"><p>Match the start of an ASCII-only word boundary. That is, this matches a
position at either the beginning of the haystack or where the previous
character is not a word character and the following character is a word
character.</p>
</div><sectionid="variant.WordEndAscii"class="variant"><ahref="#variant.WordEndAscii"class="anchor">§</a><h3class="code-header">WordEndAscii = 2_048</h3></section><divclass="docblock"><p>Match the end of an ASCII-only word boundary. That is, this matches
a position at either the end of the haystack or where the previous
character is a word character and the following character is not a word
character.</p>
</div><sectionid="variant.WordStartUnicode"class="variant"><ahref="#variant.WordStartUnicode"class="anchor">§</a><h3class="code-header">WordStartUnicode = 4_096</h3></section><divclass="docblock"><p>Match the start of a Unicode word boundary. That is, this matches a
position at either the beginning of the haystack or where the previous
character is not a word character and the following character is a word
character.</p>
</div><sectionid="variant.WordEndUnicode"class="variant"><ahref="#variant.WordEndUnicode"class="anchor">§</a><h3class="code-header">WordEndUnicode = 8_192</h3></section><divclass="docblock"><p>Match the end of a Unicode word boundary. That is, this matches a
position at either the end of the haystack or where the previous
character is a word character and the following character is not a word
character.</p>
</div><sectionid="variant.WordStartHalfAscii"class="variant"><ahref="#variant.WordStartHalfAscii"class="anchor">§</a><h3class="code-header">WordStartHalfAscii = 16_384</h3></section><divclass="docblock"><p>Match the start half of an ASCII-only word boundary. That is, this
matches a position at either the beginning of the haystack or where the
previous character is not a word character.</p>
</div><sectionid="variant.WordEndHalfAscii"class="variant"><ahref="#variant.WordEndHalfAscii"class="anchor">§</a><h3class="code-header">WordEndHalfAscii = 32_768</h3></section><divclass="docblock"><p>Match the end half of an ASCII-only word boundary. That is, this
matches a position at either the end of the haystack or where the
following character is not a word character.</p>
</div><sectionid="variant.WordStartHalfUnicode"class="variant"><ahref="#variant.WordStartHalfUnicode"class="anchor">§</a><h3class="code-header">WordStartHalfUnicode = 65_536</h3></section><divclass="docblock"><p>Match the start half of a Unicode word boundary. That is, this matches
a position at either the beginning of the haystack or where the
previous character is not a word character.</p>
</div><sectionid="variant.WordEndHalfUnicode"class="variant"><ahref="#variant.WordEndHalfUnicode"class="anchor">§</a><h3class="code-header">WordEndHalfUnicode = 131_072</h3></section><divclass="docblock"><p>Match the end half of a Unicode word boundary. That is, this matches
a position at either the end of the haystack or where the following
character is not a word character.</p>
</div></div><h2id="implementations"class="section-header">Implementations<ahref="#implementations"class="anchor">§</a></h2><divid="implementations-list"><detailsclass="toggle implementors-toggle"open><summary><sectionid="impl-Look"class="impl"><aclass="src rightside"href="../../../src/regex_automata/util/look.rs.html#137-236">source</a><ahref="#impl-Look"class="anchor">§</a><h3class="code-header">impl <aclass="enum"href="enum.Look.html"title="enum regex_automata::util::look::Look">Look</a></h3></section></summary><divclass="impl-items"><detailsclass="toggle method-toggle"open><summary><sectionid="method.reversed"class="method"><aclass="src rightside"href="../../../src/regex_automata/util/look.rs.html#144-165">source</a><h4class="code-header">pub const fn <ahref="#method.reversed"class="fn">reversed</a>(self) -><aclass="enum"href="enum.Look.html"title="enum regex_automata::util::look::Look">Look</a></h4></section></summary><divclass="docblock"><p>Flip the look-around assertion to its equivalent for reverse searches.
For example, <code>StartLF</code> gets translated to <code>EndLF</code>.</p>
<p>Some assertions, such as <code>WordUnicode</code>, remain the same since they
match the same positions regardless of the direction of the search.</p>
</div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.as_repr"class="method"><aclass="src rightside"href="../../../src/regex_automata/util/look.rs.html#172-176">source</a><h4class="code-header">pub const fn <ahref="#method.as_repr"class="fn">as_repr</a>(self) -><aclass="primitive"href="https://doc.rust-lang.org/1.76.0/std/primitive.u32.html">u32</a></h4></section></summary><divclass="docblock"><p>Return the underlying representation of this look-around enumeration
as an integer. Giving the return value to the <ahref="enum.Look.html#method.from_repr"title="associated function regex_automata::util::look::Look::from_repr"><code>Look::from_repr</code></a>
constructor is guaranteed to return the same look-around variant that
one started with within a semver compatible release of this crate.</p>
</div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.from_repr"class="method"><aclass="src rightside"href="../../../src/regex_automata/util/look.rs.html#182-204">source</a><h4class="code-header">pub const fn <ahref="#method.from_repr"class="fn">from_repr</a>(repr: <aclass="primitive"href="https://doc.rust-lang.org/1.76.0/std/primitive.u32.html">u32</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.76.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><<aclass="enum"href="enum.Look.html"title="enum regex_automata::util::look::Look">Look</a>></h4></section></summary><divclass="docblock"><p>Given the underlying representation of a <code>Look</code> value, return the
corresponding <code>Look</code> value if the representation is valid. Otherwise
<code>None</code> is returned.</p>
</div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.as_char"class="method"><aclass="src rightside"href="../../../src/regex_automata/util/look.rs.html#214-235">source</a><h4class="code-header">pub const fn <ahref="#method.as_char"class="fn">as_char</a>(self) -><aclass="primitive"href="https://doc.rust-lang.org/1.76.0/std/primitive.char.html">char</a></h4></section></summary><divclass="docblock"><p>Returns a convenient single codepoint representation of this
look-around assertion. Each assertion is guaranteed to be represented
by a distinct character.</p>
<p>This is useful for succinctly representing a look-around assertion in
human friendly but succinct output intended for a programmer working on
regex internals.</p>
</div></details></div></details></div><h2id="trait-implementations"class="section-header">Trait Implementations<ahref="#trait-implementations"class="anchor">§</a></h2><divid="trait-implementations-list"><detailsclass="toggle implementors-toggle"open><summary><sectionid="impl-Clone-for-Look"class="impl"><aclass="src rightside"href="../../../src/regex_automata/util/look.rs.html#61">source</a><ahref="#impl-Clone-for-Look"class="anchor">§</a><h3class="code-header">impl <aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/clone/trait.Clone.html"title="trait core::clone::Clone">Clone</a> for <aclass="enum"href="enum.Look.html"title="enum regex_automata::util::look::Look">Look</a></h3></section></summary><divclass="impl-items"><detailsclass="toggle method-toggle"open><summary><sectionid="method.clone"class="method trait-impl"><aclass="src rightside"href="../../../src/regex_automata/util/look.rs.html#61">source</a><ahref="#method.clone"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.76.0/core/clone/trait.Clone.html#tymethod.clone"class="fn">clone</a>(&self) -><aclass="enum"href="enum.Look.html"title="enum regex_automata::util::look::Look">Look</a></h4></section></summary><divclass='docblock'>Returns a copy of the value. <ahref="https://doc.rust-lang.org/1.76.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.clone_from"class="method trait-impl"><spanclass="rightside"><spanclass="since"title="Stable since Rust version 1.0.0">1.0.0</span> · <aclass="src"href="https://doc.rust-lang.org/1.76.0/src/core/clone.rs.html#169">source</a></span><ahref="#method.clone_from"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.76.0/core/clone/trait.Clone.html#method.clone_from"class="fn">clone_from</a>(&mut self, source: <aclass="primitive"href="https://doc.rust-lang.org/1.76.0/std/primitive.reference.html">&Self</a>)</h4></section></summary><divclass='docblock'>Performs copy-assignment from <code>source</code>. <ahref="https://doc.rust-lang.org/1.76.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><detailsclass="toggle implementors-toggle"open><summary><sectionid="impl-Debug-for-Look"class="impl"><aclass="src rightside"href="../../../src/regex_automata/util/look.rs.html#61">source</a><ahref="#impl-Debug-for-Look"class="anchor">§</a><h3class="code-header">impl <aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/fmt/trait.Debug.html"title="trait core::fmt::Debug">Debug</a> for <aclass="enum"href="enum.Look.html"title="enum regex_automata::util::look::Look">Look</a></h3></section></summary><divclass="impl-items"><detailsclass="toggle method-toggle"open><summary><sectionid="method.fmt"class="method trait-impl"><aclass="src rightside"href="../../../src/regex_automata/util/look.rs.html#61">source</a><ahref="#method.fmt"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.76.0/core/fmt/trait.Debug.html#tymethod.fmt"class="fn">fmt</a>(&self, f: &mut <aclass="struct"href="https://doc.rust-lang.org/1.76.0/core/fmt/struct.Formatter.html"title="struct core::fmt::Formatter">Formatter</a><'_>) -><aclass="type"href="https://doc.rust-lang.org/1.76.0/core/fmt/type.Result.html"title="type core::fmt::Result">Result</a></h4></section></summary><divclass='docblock'>Formats the value using the given formatter. <ahref="https://doc.rust-lang.org/1.76.0/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></div></details></div></details><detailsclass="toggle implementors-toggle"open><summary><sectionid="impl-PartialEq-for-Look"class="impl"><aclass="src rightside"href="../../../src/regex_automata/util/look.rs.html#61">source</a><ahref="#impl-PartialEq-for-Look"class="anchor">§</a><h3class="code-header">impl <aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialEq.htm
by <code>==</code>.</div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.ne"class="method trait-impl"><spanclass="rightside"><spanclass="since"title="Stable since Rust version 1.0.0">1.0.0</span> · <aclass="src"href="https://doc.rust-lang.org/1.76.0/src/core/cmp.rs.html#242">source</a></span><ahref="#method.ne"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.76.0/core/cmp/trait.PartialEq.html#method.ne"class="fn">ne</a>(&self, other: <aclass="primitive"href="https://doc.rust-lang.org/1.76.0/std/primitive.reference.html">&Rhs</a>) -><aclass="primitive"href="https://doc.rust-lang.org/1.76.0/std/primitive.bool.html">bool</a></h4></section></summary><divclass='docblock'>This method tests for <code>!=</code>. The default implementation is almost always
sufficient, and should not be overridden without very good reason.</div></details></div></details><sectionid="impl-Copy-for-Look"class="impl"><aclass="src rightside"href="../../../src/regex_automata/util/look.rs.html#61">source</a><ahref="#impl-Copy-for-Look"class="anchor">§</a><h3class="code-header">impl <aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Copy.html"title="trait core::marker::Copy">Copy</a> for <aclass="enum"href="enum.Look.html"title="enum regex_automata::util::look::Look">Look</a></h3></section><sectionid="impl-Eq-for-Look"class="impl"><aclass="src rightside"href="../../../src/regex_automata/util/look.rs.html#61">source</a><ahref="#impl-Eq-for-Look"class="anchor">§</a><h3class="code-header">impl <aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/cmp/trait.Eq.html"title="trait core::cmp::Eq">Eq</a> for <aclass="enum"href="enum.Look.html"title="enum regex_automata::util::look::Look">Look</a></h3></section><sectionid="impl-StructuralEq-for-Look"class="impl"><aclass="src rightside"href="../../../src/regex_automata/util/look.rs.html#61">source</a><ahref="#impl-StructuralEq-for-Look"class="anchor">§</a><h3class="code-header">impl <aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/marker/trait.StructuralEq.html"title="trait core::marker::StructuralEq">StructuralEq</a> for <aclass="enum"href="enum.Look.html"title="enum regex_automata::util::look::Look">Look</a></h3></section><sectionid="impl-StructuralPartialEq-for-Look"class="impl"><aclass="src rightside"href="../../../src/regex_automata/util/look.rs.html#61">source</a><ahref="#impl-StructuralPartialEq-for-Look"class="anchor">§</a><h3class="code-header">impl <aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/marker/trait.StructuralPartialEq.html"title="trait core::marker::StructuralPartialEq">StructuralPartialEq</a> for <aclass="enum"href="enum.Look.html"title="enum regex_automata::util::look::Look">Look</a></h3></section></div><h2id="synthetic-implementations"class="section-header">Auto Trait Implementations<ahref="#synthetic-implementations"class="anchor">§</a></h2><divid="synthetic-implementations-list"><sectionid="impl-RefUnwindSafe-for-Look"class="impl"><ahref="#impl-RefUnwindSafe-for-Look"class="anchor">§</a><h3class="code-header">impl <aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/panic/unwind_safe/trait.RefUnwindSafe.html"title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <aclass="enum"href="enum.Look.html"title="enum regex_automata::util::look::Look">Look</a></h3></section><sectionid="impl-Send-for-Look"class="impl"><ahref="#impl-Send-for-Look"class="anchor">§</a><h3class="code-header">impl <aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Send.html"title="trait core::marker::Send">Send</a> for <aclass="enum"href="enum.Look.html"title="enum regex_automata::util::look::Look">Look</a></h3></section><sectionid="impl-Sync-for-Look"class="impl"><ahref="#impl-Sync-for-Look"class="anchor">§</a><h3class="code-header">impl <aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sync.html"title="trait core::marker::Sync">Sync</a> for <aclass="enum"href="enum.Look.html"title="enum regex_automata::util::look::Look">Look</a></h3></section><sectionid="impl-Unpin-for-Look"class="impl"><ahref="#impl-Unpin-for-Look"class="anchor">§</a><h3class="code-header">impl <aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Unpin.html"title="trait core::marker::Unpin">Unpin</a> for <aclass="enum"href="enum.Look.html"title="enum regex_automata::util::look::Look">Look</a></h3></section><sectionid="impl-UnwindSafe-for-Look"class="impl"><ahref="#impl-UnwindSafe-for-Look"class="anchor">§</a><h3class="code-header">impl <aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/panic/unwind_safe/trait.UnwindSafe.html"title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <aclass="enum"href="enum.Look.html"title="
T: 'static + ?<aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sized.html"title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><divclass="impl-items"><detailsclass="toggle method-toggle"open><summary><sectionid="method.type_id"class="method trait-impl"><aclass="src rightside"href="https://doc.rust-lang.org/1.76.0/src/core/any.rs.html#141">source</a><ahref="#method.type_id"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.76.0/core/any/trait.Any.html#tymethod.type_id"class="fn">type_id</a>(&self) -><aclass="struct"href="https://doc.rust-lang.org/1.76.0/core/any/struct.TypeId.html"title="struct core::any::TypeId">TypeId</a></h4></section></summary><divclass='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <ahref="https://doc.rust-lang.org/1.76.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><detailsclass="toggle implementors-toggle"><summary><sectionid="impl-Borrow%3CT%3E-for-T"class="impl"><aclass="src rightside"href="https://doc.rust-lang.org/1.76.0/src/core/borrow.rs.html#208">source</a><ahref="#impl-Borrow%3CT%3E-for-T"class="anchor">§</a><h3class="code-header">impl<T><aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.Borrow.html"title="trait core::borrow::Borrow">Borrow</a><T> for T<divclass="where">where
T: ?<aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sized.html"title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><divclass="impl-items"><detailsclass="toggle method-toggle"open><summary><sectionid="method.borrow"class="method trait-impl"><aclass="src rightside"href="https://doc.rust-lang.org/1.76.0/src/core/borrow.rs.html#210">source</a><ahref="#method.borrow"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.76.0/core/borrow/trait.Borrow.html#tymethod.borrow"class="fn">borrow</a>(&self) -><aclass="primitive"href="https://doc.rust-lang.org/1.76.0/std/primitive.reference.html">&T</a></h4></section></summary><divclass='docblock'>Immutably borrows from an owned value. <ahref="https://doc.rust-lang.org/1.76.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><detailsclass="toggle implementors-toggle"><summary><sectionid="impl-BorrowMut%3CT%3E-for-T"class="impl"><aclass="src rightside"href="https://doc.rust-lang.org/1.76.0/src/core/borrow.rs.html#216">source</a><ahref="#impl-BorrowMut%3CT%3E-for-T"class="anchor">§</a><h3class="code-header">impl<T><aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/borrow/trait.BorrowMut.html"title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<divclass="where">where
T: ?<aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/marker/trait.Sized.html"title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><divclass="impl-items"><detailsclass="toggle method-toggle"open><summary><sectionid="method.borrow_mut"class="method trait-impl"><aclass="src rightside"href="https://doc.rust-lang.org/1.76.0/src/core/borrow.rs.html#217">source</a><ahref="#method.borrow_mut"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.76.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut"class="fn">borrow_mut</a>(&mut self) -><aclass="primitive"href="https://doc.rust-lang.org/1.76.0/std/primitive.reference.html">&mut T</a></h4></section></summary><divclass='docblock'>Mutably borrows from an owned value. <ahref="https://doc.rust-lang.org/1.76.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><detailsclass="toggle implementors-toggle"><summary><sectionid="impl-From%3CT%3E-for-T"class="impl"><aclass="src rightside"href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#763">source</a><ahref="#impl-From%3CT%3E-for-T"class="anchor">§</a><h3class="code-header">impl<T><aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/convert/trait.From.html"title="trait core::convert::From">From</a><T> for T</h3></section></summary><divclass="impl-items"><detailsclass="toggle method-toggle"open><summary><sectionid="method.from"class="method trait-impl"><aclass="src rightside"href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#766">source</a><ahref="#method.from"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.76.0/core/convert/trait.From.html#tymethod.from"class="fn">from</a>(t: T) -> T</h4></section></summary><divclass="docblock"><p>Returns the argument unchanged.</p>
</div></details></div></details><detailsclass="toggle implementors-toggle"><summary><sectionid="impl-Into%3CU%3E-for-T"class="impl"><aclass="src rightside"href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#747-749">source</a><ahref="#impl-Into%3CU%3E-for-T"class="anchor">§</a><h3class="code-header">impl<T, U><aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/convert/trait.Into.html"title="trait core::convert::Into">Into</a><U> for T<divclass="where">where
<p>That is, this conversion is whatever the implementation of
<code><ahref="https://doc.rust-lang.org/1.76.0/core/convert/trait.From.html"title="trait core::convert::From">From</a><T> for U</code> chooses to do.</p>
</div></details></div></details><detailsclass="toggle implementors-toggle"><summary><sectionid="impl-ToOwned-for-T"class="impl"><aclass="src rightside"href="https://doc.rust-lang.org/1.76.0/src/alloc/borrow.rs.html#83-85">source</a><ahref="#impl-ToOwned-for-T"class="anchor">§</a><h3class="code-header">impl<T><aclass="trait"href="https://doc.rust-lang.org/1.76.0/alloc/borrow/trait.ToOwned.html"title="trait alloc::borrow::ToOwned">ToOwned</a> for T<divclass="where">where
T: <aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/clone/trait.Clone.html"title="trait core::clone::Clone">Clone</a>,</div></h3></section></summary><divclass="impl-items"><detailsclass="toggle"open><summary><sectionid="associatedtype.Owned"class="associatedtype trait-impl"><ahref="#associatedtype.Owned"class="anchor">§</a><h4class="code-header">type <ahref="https://doc.rust-lang.org/1.76.0/alloc/borrow/trait.ToOwned.html#associatedtype.Owned"class="associatedtype">Owned</a> = T</h4></section></summary><divclass='docblock'>The resulting type after obtaining ownership.</div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.to_owned"class="method trait-impl"><aclass="src rightside"href="https://doc.rust-lang.org/1.76.0/src/alloc/borrow.rs.html#88">source</a><ahref="#method.to_owned"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.76.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned"class="fn">to_owned</a>(&self) -> T</h4></section></summary><divclass='docblock'>Creates owned data from borrowed data, usually by cloning. <ahref="https://doc.rust-lang.org/1.76.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.clone_into"class="method trait-impl"><aclass="src rightside"href="https://doc.rust-lang.org/1.76.0/src/alloc/borrow.rs.html#92">source</a><ahref="#method.clone_into"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.76.0/alloc/borrow/trait.ToOwned.html#method.clone_into"class="fn">clone_into</a>(&self, target: <aclass="primitive"href="https://doc.rust-lang.org/1.76.0/std/primitive.reference.html">&mut T</a>)</h4></section></summary><divclass='docblock'>Uses borrowed data to replace owned data, usually by cloning. <ahref="https://doc.rust-lang.org/1.76.0/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></div></details></div></details><detailsclass="toggle implementors-toggle"><summary><sectionid="impl-TryFrom%3CU%3E-for-T"class="impl"><aclass="src rightside"href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#803-805">source</a><ahref="#impl-TryFrom%3CU%3E-for-T"class="anchor">§</a><h3class="code-header">impl<T, U><aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html"title="trait core::convert::TryFrom">TryFrom</a><U> for T<divclass="where">where
U: <aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/convert/trait.Into.html"title="trait core::convert::Into">Into</a><T>,</div></h3></section></summary><divclass="impl-items"><detailsclass="toggle"open><summary><sectionid="associatedtype.Error"class="associatedtype trait-impl"><ahref="#associatedtype.Error"class="anchor">§</a><h4class="code-header">type <ahref="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html#associatedtype.Error"class="associatedtype">Error</a> = <aclass="enum"href="https://doc.rust-lang.org/1.76.0/core/convert/enum.Infallible.html"title="enum core::convert::Infallible">Infallible</a></h4></section></summary><divclass='docblock'>The type returned in the event of a conversion error.</div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.try_from"class="method trait-impl"><aclass="src rightside"href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#810">source</a><ahref="#method.try_from"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html#tymethod.try_from"class="fn">try_from</a>(value: U) -><aclass="enum"href="https://doc.rust-lang.org/1.76.0/core/result/enum.Result.html"title="enum core::result::Result">Result</a><T, <T as <aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html"title="trait core::convert::TryFrom">TryFrom</a><U>>::<aclass="associatedtype"href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html#associatedtype.Error"title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><divclass='docblock'>Performs the conversion.</div></details></div></details><detailsclass="toggle implementors-toggle"><summary><sectionid="impl-TryInto%3CU%3E-for-T"class="impl"><aclass="src rightside"href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#788-790">source</a><ahref="#impl-TryInto%3CU%3E-for-T"class="anchor">§</a><h3class="code-header">impl<T, U><aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryInto.html"title="trait core::convert::TryInto">TryInto</a><U> for T<divclass="where">where
U: <aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html"title="trait core::convert::TryFrom">TryFrom</a><T>,</div></h3></section></summary><divclass="impl-items"><detailsclass="toggle"open><summary><sectionid="associatedtype.Error-1"class="associatedtype trait-impl"><ahref="#associatedtype.Error-1"class="anchor">§</a><h4class="code-header">type <ahref="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryInto.html#associatedtype.Error"class="associatedtype">Error</a> = <U as <aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html"title="trait core::convert::TryFrom">TryFrom</a><T>>::<aclass="associatedtype"href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html#associatedtype.Error"title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><divclass='docblock'>The type returned in the event of a conversion error.</div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.try_into"class="method trait-impl"><aclass="src rightside"href="https://doc.rust-lang.org/1.76.0/src/core/convert/mod.rs.html#795">source</a><ahref="#method.try_into"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryInto.html#tymethod.try_into"class="fn">try_into</a>(self) -><aclass="enum"href="https://doc.rust-lang.org/1.76.0/core/result/enum.Result.html"title="enum core::result::Result">Result</a><U, <U as <aclass="trait"href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html"title="trait core::convert::TryFrom">TryFrom</a><T>>::<aclass="associatedtype"href="https://doc.rust-lang.org/1.76.0/core/convert/trait.TryFrom.html#associatedtype.Error"title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><divclass='docblock'>Performs the conversion.</div></details></div></details></div></section></div></main></body></html>