<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>Struct <ahref="../../index.html">regex_automata</a>::<wbr><ahref="../index.html">util</a>::<wbr><ahref="index.html">primitives</a>::<wbr><aclass="struct"href="#">SmallIndex</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/primitives.rs.html#144">source</a> · <buttonid="toggle-all-docs"title="collapse all docs">[<span>−</span>]</button></span></div><preclass="rust item-decl"><code>pub struct SmallIndex(<spanclass="comment">/* private fields */</span>);</code></pre><detailsclass="toggle top-doc"open><summaryclass="hideme"><span>Expand description</span></summary><divclass="docblock"><p>A type that represents a “small” index.</p>
<p>The main idea of this type is to provide something that can index memory,
but uses less memory than <code>usize</code> on 64-bit systems. Specifically, its
representation is always a <code>u32</code> and has <code>repr(transparent)</code> enabled. (So
it is safe to transmute between a <code>u32</code> and a <code>SmallIndex</code>.)</p>
<p>A small index is typically useful in cases where there is no practical way
that the index will overflow a 32-bit integer. A good example of this is
an NFA state. If you could somehow build an NFA with <code>2^30</code> states, its
memory usage would be exorbitant and its runtime execution would be so
slow as to be completely worthless. Therefore, this crate generally deems
it acceptable to return an error if it would otherwise build an NFA that
requires a slice longer than what a 32-bit integer can index. In exchange,
we can use 32-bit indices instead of 64-bit indices in various places.</p>
<p>This type ensures this by providing a constructor that will return an error
if its argument cannot fit into the type. This makes it much easier to
handle these sorts of boundary cases that are otherwise extremely subtle.</p>
<p>On all targets, this type guarantees that its value will fit in a <code>u32</code>,
<code>i32</code>, <code>usize</code> and an <code>isize</code>. This means that on 16-bit targets, for
example, this type’s maximum value will never overflow an <code>isize</code>,
which means it will never overflow a <code>i16</code> even though its internal
representation is still a <code>u32</code>.</p>
<p>The purpose for making the type fit into even signed integer types like
<code>isize</code> is to guarantee that the difference between any two small indices
is itself also a small index. This is useful in certain contexts, e.g.,
<p>The following types wrap <code>SmallIndex</code> to provide a more focused use case:</p>
<ul>
<li><ahref="../../struct.PatternID.html"title="struct regex_automata::PatternID"><code>PatternID</code></a> is for representing the identifiers of patterns.</li>
<li><ahref="struct.StateID.html"title="struct regex_automata::util::primitives::StateID"><code>StateID</code></a> is for representing the identifiers of states in finite
</div></details><detailsclass="toggle"open><summary><sectionid="associatedconstant.LIMIT"class="associatedconstant"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#159">source</a><h4class="code-header">pub const <ahref="#associatedconstant.LIMIT"class="constant">LIMIT</a>: <aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.usize.html">usize</a> = 2_147_483_647usize</h4></section></summary><divclass="docblock"><p>The total number of values that can be represented as a small index.</p>
</div></details><detailsclass="toggle"open><summary><sectionid="associatedconstant.SIZE"class="associatedconstant"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#165">source</a><h4class="code-header">pub const <ahref="#associatedconstant.SIZE"class="constant">SIZE</a>: <aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.usize.html">usize</a> = 4usize</h4></section></summary><divclass="docblock"><p>The number of bytes that a single small index uses in memory.</p>
</div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.new"class="method"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#172-174">source</a><h4class="code-header">pub fn <ahref="#method.new"class="fn">new</a>(index: <aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.usize.html">usize</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.78.0/core/result/enum.Result.html"title="enum core::result::Result">Result</a><<aclass="struct"href="struct.SmallIndex.html"title="struct regex_automata::util::primitives::SmallIndex">SmallIndex</a>, <aclass="struct"href="struct.SmallIndexError.html"title="struct regex_automata::util::primitives::SmallIndexError">SmallIndexError</a>></h4></section></summary><divclass="docblock"><p>Create a new small index.</p>
<p>If the given index exceeds <ahref="struct.SmallIndex.html#associatedconstant.MAX"title="associated constant regex_automata::util::primitives::SmallIndex::MAX"><code>SmallIndex::MAX</code></a>, then this returns
</div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.new_unchecked"class="method"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#187-190">source</a><h4class="code-header">pub const fn <ahref="#method.new_unchecked"class="fn">new_unchecked</a>(index: <aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.usize.html">usize</a>) -><aclass="struct"href="struct.SmallIndex.html"title="struct regex_automata::util::primitives::SmallIndex">SmallIndex</a></h4></section></summary><divclass="docblock"><p>Create a new small index without checking whether the given value
</div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.must"class="method"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#194-196">source</a><h4class="code-header">pub fn <ahref="#method.must"class="fn">must</a>(index: <aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.usize.html">usize</a>) -><aclass="struct"href="struct.SmallIndex.html"title="struct regex_automata::util::primitives::SmallIndex">SmallIndex</a></h4></section></summary><divclass="docblock"><p>Like <ahref="struct.SmallIndex.html#method.new"title="associated function regex_automata::util::primitives::SmallIndex::new"><code>SmallIndex::new</code></a>, but panics if the given index is not valid.</p>
</div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.as_usize"class="method"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#201-204">source</a><h4class="code-header">pub const fn <ahref="#method.as_usize"class="fn">as_usize</a>(&self) -><aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.usize.html">usize</a></h4></section></summary><divclass="docblock"><p>Return this small index as a <code>usize</code>. This is guaranteed to never
</div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.as_u64"class="method"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#209-212">source</a><h4class="code-header">pub const fn <ahref="#method.as_u64"class="fn">as_u64</a>(&self) -><aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.u64.html">u64</a></h4></section></summary><divclass="docblock"><p>Return this small index as a <code>u64</code>. This is guaranteed to never
</div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.as_u32"class="method"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#217-219">source</a><h4class="code-header">pub const fn <ahref="#method.as_u32"class="fn">as_u32</a>(&self) -><aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.u32.html">u32</a></h4></section></summary><divclass="docblock"><p>Return the internal <code>u32</code> of this small index. This is guaranteed to
</div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.as_i32"class="method"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#224-227">source</a><h4class="code-header">pub const fn <ahref="#method.as_i32"class="fn">as_i32</a>(&self) -><aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.i32.html">i32</a></h4></section></summary><divclass="docblock"><p>Return the internal <code>u32</code> of this small index represented as an <code>i32</code>.
</div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.one_more"class="method"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#234-236">source</a><h4class="code-header">pub fn <ahref="#method.one_more"class="fn">one_more</a>(&self) -><aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.usize.html">usize</a></h4></section></summary><divclass="docblock"><p>Returns one more than this small index as a usize.</p>
</div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.from_ne_bytes"class="method"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#244-252">source</a><h4class="code-header">pub fn <ahref="#method.from_ne_bytes"class="fn">from_ne_bytes</a>(bytes: [<aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.u8.html">u8</a>; <aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.array.html">4</a>]) -><aclass="enum"href="https://doc.rust-lang.org/1.78.0/core/result/enum.Result.html"title="enum core::result::Result">Result</a><<aclass="struct"href="struct.SmallIndex.html"title="struct regex_automata::util::primitives::SmallIndex">SmallIndex</a>, <aclass="struct"href="struct.SmallIndexError.html"title="struct regex_automata::util::primitives::SmallIndexError">SmallIndexError</a>></h4></section></summary><divclass="docblock"><p>Decode this small index from the bytes given using the native endian
</div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.from_ne_bytes_unchecked"class="method"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#260-262">source</a><h4class="code-header">pub fn <ahref="#method.from_ne_bytes_unchecked"class="fn">from_ne_bytes_unchecked</a>(bytes: [<aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.u8.html">u8</a>; <aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.array.html">4</a>]) -><aclass="struct"href="struct.SmallIndex.html"title="struct regex_automata::util::primitives::SmallIndex">SmallIndex</a></h4></section></summary><divclass="docblock"><p>Decode this small index from the bytes given using the native endian
<p>This is analogous to <ahref="struct.SmallIndex.html#method.new_unchecked"title="associated function regex_automata::util::primitives::SmallIndex::new_unchecked"><code>SmallIndex::new_unchecked</code></a> in that is does not
check whether the decoded integer is representable as a small index.</p>
</div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.to_ne_bytes"class="method"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#267-269">source</a><h4class="code-header">pub fn <ahref="#method.to_ne_bytes"class="fn">to_ne_bytes</a>(&self) -> [<aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.u8.html">u8</a>; <aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.array.html">4</a>]</h4></section></summary><divclass="docblock"><p>Return the underlying small index integer as raw bytes in native endian
Self: <aclass="trait"href="https://doc.rust-lang.org/1.78.0/core/marker/trait.Sized.html"title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><divclass='docblock'>Feeds a slice of this type into the given <ahref="https://doc.rust-lang.org/1.78.0/core/hash/trait.Hasher.html"title="trait core::hash::Hasher"><code>Hasher</code></a>. <ahref="https://doc.rust-lang.org/1.78.0/core/hash/trait.Hash.html#method.hash_slice">Read more</a></div></details></div></details><detailsclass="toggle implementors-toggle"open><summary><sectionid="impl-Index%3CSmallIndex%3E-for-%5BT%5D"class="impl"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#272-279">source</a><ahref="#impl-Index%3CSmallIndex%3E-for-%5BT%5D"class="anchor">§</a><h3class="code-header">impl<T><aclass="trait"href="https://doc.rust-lang.org/1.78.0/core/ops/index/trait.Index.html"title="trait core::ops::index::Index">Index</a><<aclass="struct"href="struct.SmallIndex.html"title="struct regex_automata::util::primitives::SmallIndex">SmallIndex</a>> for <aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.slice.html">[T]</a></h3></section></summary><divclass="impl-items"><detailsclass="toggle"open><summary><sectionid="associatedtype.Output"class="associatedtype trait-impl"><ahref="#associatedtype.Output"class="anchor">§</a><h4class="code-header">type <ahref="https://doc.rust-lang.org/1.78.0/core/ops/index/trait.Index.html#associatedtype.Output"class="associatedtype">Output</a> = T</h4></section></summary><divclass='docblock'>The returned type after indexing.</div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.index"class="method trait-impl"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#276-278">source</a><ahref="#method.index"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.78.0/core/ops/index/trait.Index.html#tymethod.index"class="fn">index</a>(&self, index: <aclass="struct"href="struct.SmallIndex.html"title="struct regex_automata::util::primitives::SmallIndex">SmallIndex</a>) -><aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.reference.html">&T</a></h4></section></summary><divclass='docblock'>Performs the indexing (<code>container[index]</code>) operation. <ahref="https://doc.rust-lang.org/1.78.0/core/ops/index/trait.Index.html#tymethod.index">Read more</a></div></details></div></details><detailsclass="toggle implementors-toggle"open><summary><sectionid="impl-Index%3CSmallIndex%3E-for-Vec%3CT%3E"class="impl"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#289-296">source</a><ahref="#impl-Index%3CSmallIndex%3E-for-Vec%3CT%3E"class="anchor">§</a><h3class="code-header">impl<T><aclass="trait"href="https://doc.rust-lang.org/1.78.0/core/ops/index/trait.Index.html"title="trait core::ops::index::Index">Index</a><<aclass="struct"href="struct.SmallIndex.html"title="struct regex_automata::util::primitives::SmallIndex">SmallIndex</a>> for <aclass="struct"href="https://doc.rust-lang.org/1.78.0/alloc/vec/struct.Vec.html"title="struct alloc::vec::Vec">Vec</a><T></h3></section></summary><divclass="impl-items"><detailsclass="toggle"open><summary><sectionid="associatedtype.Output-1"class="associatedtype trait-impl"><ahref="#associatedtype.Output-1"class="anchor">§</a><h4class="code-header">type <ahref="https://doc.rust-lang.org/1.78.0/core/ops/index/trait.Index.html#associatedtype.Output"class="associatedtype">Output</a> = T</h4></section></summary><divclass='docblock'>The returned type after indexing.</div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.index-1"class="method trait-impl"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#293-295">source</a><ahref="#method.index-1"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.78.0/cor
Self: <aclass="trait"href="https://doc.rust-lang.org/1.78.0/core/marker/trait.Sized.html"title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><divclass='docblock'>Compares and returns the maximum of two values. <ahref="https://doc.rust-lang.org/1.78.0/core/cmp/trait.Ord.html#method.max">Read more</a></div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.min"class="method trait-impl"><spanclass="rightside"><spanclass="since"title="Stable since Rust version 1.21.0">1.21.0</span> · <aclass="src"href="https://doc.rust-lang.org/1.78.0/src/core/cmp.rs.html#871-873">source</a></span><ahref="#method.min"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.78.0/core/cmp/trait.Ord.html#method.min"class="fn">min</a>(self, other: Self) -> Self<divclass="where">where
Self: <aclass="trait"href="https://doc.rust-lang.org/1.78.0/core/marker/trait.Sized.html"title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><divclass='docblock'>Compares and returns the minimum of two values. <ahref="https://doc.rust-lang.org/1.78.0/core/cmp/trait.Ord.html#method.min">Read more</a></div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.clamp"class="method trait-impl"><spanclass="rightside"><spanclass="since"title="Stable since Rust version 1.50.0">1.50.0</span> · <aclass="src"href="https://doc.rust-lang.org/1.78.0/src/core/cmp.rs.html#896-899">source</a></span><ahref="#method.clamp"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.78.0/core/cmp/trait.Ord.html#method.clamp"class="fn">clamp</a>(self, min: Self, max: Self) -> Self<divclass="where">where
Self: <aclass="trait"href="https://doc.rust-lang.org/1.78.0/core/marker/trait.Sized.html"title="trait core::marker::Sized">Sized</a> + <aclass="trait"href="https://doc.rust-lang.org/1.78.0/core/cmp/trait.PartialOrd.html"title="trait core::cmp::PartialOrd">PartialOrd</a>,</div></h4></section></summary><divclass='docblock'>Restrict a value to a certain interval. <ahref="https://doc.rust-lang.org/1.78.0/core/cmp/trait.Ord.html#method.clamp">Read more</a></div></details></div></details><detailsclass="toggle implementors-toggle"open><summary><sectionid="impl-PartialEq-for-SmallIndex"class="impl"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#141">source</a><ahref="#impl-PartialEq-for-SmallIndex"class="anchor">§</a><h3class="code-header">impl <aclass="trait"href="https://doc.rust-lang.org/1.78.0/core/cmp/trait.PartialEq.html"title="trait core::cmp::PartialEq">PartialEq</a> for <aclass="struct"href="struct.SmallIndex.html"title="struct regex_automata::util::primitives::SmallIndex">SmallIndex</a></h3></section></summary><divclass="impl-items"><detailsclass="toggle method-toggle"open><summary><sectionid="method.eq"class="method trait-impl"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#141">source</a><ahref="#method.eq"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.78.0/core/cmp/trait.PartialEq.html#tymethod.eq"class="fn">eq</a>(&self, other: &<aclass="struct"href="struct.SmallIndex.html"title="struct regex_automata::util::primitives::SmallIndex">SmallIndex</a>) -><aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.bool.html">bool</a></h4></section></summary><divclass='docblock'>This method tests for <code>self</code> and <code>other</code> values to be equal, and is used
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.78.0/src/core/cmp.rs.html#263">source</a></span><ahref="#method.ne"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.78.0/core/cmp/trait.PartialEq.html#method.ne"class="fn">ne</a>(&self, other: <aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.reference.html">&Rhs</a>) -><aclass="primitive"href="https://doc.rust-lang.org/1.78.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><detailsclass="toggle implementors-toggle"open><summary><sectionid="impl-PartialOrd-for-SmallIndex"class="impl"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#141">source</a><ahref="#impl-PartialOrd-for-SmallIndex"class="anchor">§</a><h3class="code-header">impl <aclass="trait"href="https://doc.rust-lang.org/1.78.0/core/cmp/trait.PartialOrd.html"title="trait core::cmp::PartialOrd">PartialOrd</a> for <aclass="struct"href="struct.SmallIndex.html"title="struct regex_automata::util::primitives::SmallIndex">SmallIndex</a></h3></section></summary><divclass="impl-items"><detailsclass="toggle method-toggle"open><summary><sectionid="method.partial_cmp"class="method trait-impl"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#141">source</a><ahref="#method.partial_cmp"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.78.0/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp"class="fn">partial_cmp</a>(&self, other: &<aclass="struct"href="struct.SmallIndex.html"title="struct regex_automata::util::primitives::SmallIndex">SmallIndex</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.78.0/core/option/enum.Option.html"title="enum core::option::Option">Option</a><<aclass="enum"href="https://doc.rust-lang.org/1.78.0/core/cmp/enum.Ordering.html"title="enum core::cmp::Ordering">Ordering</a>></h4></section></summary><divclass='docblock'>This method returns an ordering between <code>self</code> and <code>other</code> values if one exists. <ahref="https://doc.rust-lang.org/1.78.0/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp">Read more</a></div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.lt"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.78.0/src/core/cmp.rs.html#1171">source</a></span><ahref="#method.lt"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.78.0/core/cmp/trait.PartialOrd.html#method.lt"class="fn">lt</a>(&self, other: <aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.reference.html">&Rhs</a>) -><aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.bool.html">bool</a></h4></section></summary><divclass='docblock'>This method tests less than (for <code>self</code> and <code>other</code>) and is used by the <code><</code> operator. <ahref="https://doc.rust-lang.org/1.78.0/core/cmp/trait.PartialOrd.html#method.lt">Read more</a></div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.le"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.78.0/src/core/cmp.rs.html#1188">source</a></span><ahref="#method.le"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.78.0/core/cmp/trait.PartialOrd.html#method.le"class="fn">le</a>(&self, other: <aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.reference.html">&Rhs</a>) -><aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.bool.html">bool</a></h4></section></summary><divclass='docblock'>This method tests less than or equal to (for <code>self</code> and <code>other</code>) and is used by the <code><=</code>
operator. <ahref="https://doc.rust-lang.org/1.78.0/core/cmp/trait.PartialOrd.html#method.le">Read more</a></div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.gt"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.78.0/src/core/cmp.rs.html#1204">source</a></span><ahref="#method.gt"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.78.0/core/cmp/trait.PartialOrd.html#method.gt"class="fn">gt</a>(&self, other: <aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.reference.html">&Rhs</a>) -><aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.bool.html">bool</a></h4></section></summary><divclass='docblock'>This method tests greater than (for <code>self</code> and <code>other</code>) and is used by the <code>></code> operator. <ahref="https://doc.rust-lang.org/1.78.0/core/cmp/trait.PartialOrd.html#method.gt">Read more</a></div></details><detailsclass="toggle method-toggle"open><summary><sectionid="method.ge"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.78.0/src/core/cmp.rs.html#1221">source</a></span><ahref="#method.ge"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.78.0/core/cmp/trait.PartialOrd.html#method.ge"class="fn">ge</a>(&self, other: <aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.reference.html">&Rhs</a>) -><aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.bool.html">bool</a></h4></section></summary><divclass='docblock'>This method tests greater than or equal to (for <code>self</code> and <code>other</code>) and is used by the <code>>=</code>
operator. <ahref="https://doc.rust-lang.org/1.78.0/core/cmp/trait.PartialOrd.html#method.ge">Read more</a></div></details></div></details><detailsclass="toggle implementors-toggle"open><summary><sectionid="impl-TryFrom%3Cu16%3E-for-SmallIndex"class="impl"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#312-321">source</a><ahref="#impl-TryFrom%3Cu16%3E-for-SmallIndex"class="anchor">§</a><h3class="code-header">impl <aclass="trait"href="https://doc.rust-lang.org/1.78.0/core/convert/trait.TryFrom.html"title="trait core::convert::TryFrom">TryFrom</a><<aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.u16.html">u16</a>> for <aclass="struct"href="struct.SmallIndex.html"title="struct regex_automata::util::primitives::SmallIndex">SmallIndex</a></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.78.0/core/convert/trait.TryFrom.html#associatedtype.Error"class="associatedtype">Error</a> = <aclass="struct"href="struct.SmallIndexError.html"title="struct regex_automata::util::primitives::SmallIndexError">SmallIndexError</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="../../../src/regex_automata/util/primitives.rs.html#315-320">source</a><ahref="#method.try_from"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.78.0/core/convert/trait.TryFrom.html#tymethod.try_from"class="fn">try_from</a>(index: <aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.u16.html">u16</a>) -><aclass="enum"href="https://doc.rust-lang.org/1.78.0/core/result/enum.Result.html"title="enum core::result::Result">Result</a><<aclass="struct"href="struct.SmallIndex.html"title="struct regex_automata::util::primitives::SmallIndex">SmallIndex</a>, <aclass="struct"href="struct.SmallIndexError.html"title="struct regex_automata::util::primitives::SmallIndexError">SmallIndexError</a>></h4></section></summary><divclass='docblock'>Performs the conversion.</div></details></div></details><detailsclass="toggle implementors-toggle"open><summary><sectionid="impl-TryFrom%3Cu32%3E-for-SmallIndex"class="impl"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#323-332">source</a><ahref="#impl-TryFrom%3Cu32%3E-for-SmallIndex"class="anchor">§</a><h3class="code-header">impl <aclass="trait"href="https://doc.rust-lang.org/1.78.0/core/convert/trait.TryFrom.html"title="trait core::convert::TryFrom">TryFrom</a><<aclass="primitive"href="https://doc.rust-lang.org/1.78.0/std/primitive.u32.html">u32</a>> for <aclass="struct"href="struct.SmallIndex.html"title="struct regex_automata::util::primitives::SmallIndex">SmallIndex</a></h3></section></summary><divclass="impl-items"><detailsclass="toggle"open><summary><sectionid="associatedtype.Error-3"class="associatedtype trait-impl"><ahref="#associatedtype.Error-3"class="anchor">§</a><h4class="code-header">type <ahref="https://doc.rust-lang.org/1.78.0/core/convert/trait.TryFrom.html#associatedtype.Error"class="associatedtype">Error</a> = <aclass="struct"href="struct.SmallIndexError.html"title="struct regex_automata::util::primitives::SmallIndexError">SmallIndexError</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-3"class="method trait-impl"><aclass="src rightside"href="../../../src/regex_automata/util/primitives.rs.html#326-331">source</a><ahref="#method.try_from-3"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.78.
T: 'static + ?<aclass="trait"href="https://doc.rust-lang.org/1.78.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.78.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.78.0/core/any/trait.Any.html#tymethod.type_id"class="fn">type_id</a>(&self) -><aclass="struct"href="https://doc.rust-lang.org/1.78.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.78.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.78.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.78.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.78.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.78.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.78.0/core/borrow/trait.Borrow.html#tymethod.borrow"class="fn">borrow</a>(&self) -><aclass="primitive"href="https://doc.rust-lang.org/1.78.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.78.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.78.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.78.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.78.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.78.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.78.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.78.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.78.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.78.0/src/core/convert/mod.rs.html#765">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.78.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-1"class="method trait-impl"><aclass="src rightside"href="https://doc.rust-lang.org/1.78.0/src/core/convert/mod.rs.html#768">source</a><ahref="#method.from-1"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.78.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.78.0/src/core/convert/mod.rs.html#748-750">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.78.0/core/convert/trait.Into.html"title="trait core::convert::Into">Into</a><U> for T<divclass="where">where
<code><ahref="https://doc.rust-lang.org/1.78.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.78.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.78.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.78.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.78.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.78.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.78.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.78.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.78.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.78.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.78.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.78.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.78.0/src/core/convert/mod.rs.html#805-807">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.78.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.78.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-5"class="associatedtype trait-impl"><ahref="#associatedtype.Error-5"class="anchor">§</a><h4class="code-header">type <ahref="https://doc.rust-lang.org/1.78.0/core/convert/trait.TryFrom.html#associatedtype.Error"class="associatedtype">Error</a> = <aclass="enum"href="https://doc.rust-lang.org/1.78.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-4"class="method trait-impl"><aclass="src rightside"href="https://doc.rust-lang.org/1.78.0/src/core/convert/mod.rs.html#812">source</a><ahref="#method.try_from-4"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.78.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.78.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.78.0/core/convert/trait.TryFrom.html"title="trait core::convert::TryFrom">TryFrom</a><U>>::<aclass="associatedtype"href="https://doc.rust-lang.org/1.78.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.78.0/src/core/convert/mod.rs.html#790-792">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.78.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.78.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-4"class="associatedtype trait-impl"><ahref="#associatedtype.Error-4"class="anchor">§</a><h4class="code-header">type <ahref="https://doc.rust-lang.org/1.78.0/core/convert/trait.TryInto.html#associatedtype.Error"class="associatedtype">Error</a> = <U as <aclass="trait"href="https://doc.rust-lang.org/1.78.0/core/convert/trait.TryFrom.html"title="trait core::convert::TryFrom">TryFrom</a><T>>::<aclass="associatedtype"href="https://doc.rust-lang.org/1.78.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.78.0/src/core/convert/mod.rs.html#797">source</a><ahref="#method.try_into"class="anchor">§</a><h4class="code-header">fn <ahref="https://doc.rust-lang.org/1.78.0/core/convert/trait.TryInto.html#tymethod.try_into"class="fn">try_into</a>(self) -><aclass="enum"href="https://doc.rust-lang.org/1.78.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.78.0/core/convert/trait.TryFrom.html"title="trait core::convert::TryFrom">TryFrom</a><T>>::<aclass="associatedtype"href="https://doc.rust-lang.org/1.78.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>