ssw/doc/syn/enum.Pat.html
2023-01-09 19:23:20 +01:00

83 lines
61 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!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="A pattern in a local binding, function signature, match expression, or various other places."><meta name="keywords" content="rust, rustlang, rust-lang, Pat"><title>Pat in syn - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" type="text/css" href="../normalize.css"><link rel="stylesheet" type="text/css" href="../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../ayu.css" disabled><link rel="stylesheet" type="text/css" href="../dark.css" disabled><link rel="stylesheet" type="text/css" href="../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../storage.js"></script><script defer src="sidebar-items.js"></script><script defer src="../main.js"></script><noscript><link rel="stylesheet" href="../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../favicon.svg"></head><body class="rustdoc enum"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button><a class="sidebar-logo" href="../syn/index.html"><div class="logo-container"><img class="rust-logo" src="../rust-logo.svg" alt="logo"></div></a><h2 class="location"></h2></nav><nav class="sidebar"><a class="sidebar-logo" href="../syn/index.html"><div class="logo-container"><img class="rust-logo" src="../rust-logo.svg" alt="logo"></div></a><h2 class="location"><a href="#">Pat</a></h2><div class="sidebar-elems"><section><div class="block"><h3 class="sidebar-title"><a href="#variants">Variants</a></h3><ul><li><a href="#variant.Box">Box</a></li><li><a href="#variant.Ident">Ident</a></li><li><a href="#variant.Lit">Lit</a></li><li><a href="#variant.Macro">Macro</a></li><li><a href="#variant.Or">Or</a></li><li><a href="#variant.Path">Path</a></li><li><a href="#variant.Range">Range</a></li><li><a href="#variant.Reference">Reference</a></li><li><a href="#variant.Rest">Rest</a></li><li><a href="#variant.Slice">Slice</a></li><li><a href="#variant.Struct">Struct</a></li><li><a href="#variant.Tuple">Tuple</a></li><li><a href="#variant.TupleStruct">TupleStruct</a></li><li><a href="#variant.Type">Type</a></li><li><a href="#variant.Verbatim">Verbatim</a></li><li><a href="#variant.Wild">Wild</a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#trait-implementations">Trait Implementations</a></h3><ul><li><a href="#impl-Clone-for-Pat">Clone</a></li><li><a href="#impl-From%3CPatBox%3E-for-Pat">From&lt;PatBox&gt;</a></li><li><a href="#impl-From%3CPatIdent%3E-for-Pat">From&lt;PatIdent&gt;</a></li><li><a href="#impl-From%3CPatLit%3E-for-Pat">From&lt;PatLit&gt;</a></li><li><a href="#impl-From%3CPatMacro%3E-for-Pat">From&lt;PatMacro&gt;</a></li><li><a href="#impl-From%3CPatOr%3E-for-Pat">From&lt;PatOr&gt;</a></li><li><a href="#impl-From%3CPatPath%3E-for-Pat">From&lt;PatPath&gt;</a></li><li><a href="#impl-From%3CPatRange%3E-for-Pat">From&lt;PatRange&gt;</a></li><li><a href="#impl-From%3CPatReference%3E-for-Pat">From&lt;PatReference&gt;</a></li><li><a href="#impl-From%3CPatRest%3E-for-Pat">From&lt;PatRest&gt;</a></li><li><a href="#impl-From%3CPatSlice%3E-for-Pat">From&lt;PatSlice&gt;</a></li><li><a href="#impl-From%3CPatStruct%3E-for-Pat">From&lt;PatStruct&gt;</a></li><li><a href="#impl-From%3CPatTuple%3E-for-Pat">From&lt;PatTuple&gt;</a></li><li><a href="#impl-From%3CPatTupleStruct%3E-for-Pat">From&lt;PatTupleStruct&gt;</a></li><li><a href="#impl-From%3CPatType%3E-for-Pat">From&lt;PatType&gt;</a></li><li><a href="#impl-From%3CPatWild%3E-for-Pat">From&lt;PatWild&gt;</a></li><li><a href="#impl-Parse-for-Pat">Parse</a></li><li><a href="#impl-ToTokens-for-Pat">ToTokens</a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul><li><a href="#impl-RefUnwindSafe-for-Pat">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Pat">!Send</a></li><li><a href="#impl-Sync-for-Pat">!Sync</a></li><li><a href="#impl-Unpin-for-Pat">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Pat">UnwindSafe</a></li></ul></div><div class="block"><h3 class="sidebar-title"><a href="#blanket-implementations">Blanket Implementations</a></h3><ul><li><a href="#impl-Any-for-Pat">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-Pat">Borrow&lt;T&gt;</a></li><li><a href="#impl-BorrowMut%3CT%3E-for-Pat">BorrowMut&lt;T&gt;</a></li><li><a href="#impl-From%3CT%3E-for-Pat">From&lt;T&gt;</a></li><li><a href="#impl-Into%3CU%3E-for-Pat">Into&lt;U&gt;</a></li><li><a href="#impl-Spanned-for-Pat">Spanned</a></li><li><a href="#impl-ToOwned-for-Pat">ToOwned</a></li><li><a href="#impl-TryFrom%3CU%3E-for-Pat">TryFrom&lt;U&gt;</a></li><li><a href="#impl-TryInto%3CU%3E-for-Pat">TryInto&lt;U&gt;</a></li></ul></div></section><h2 class="location"><a href="index.html">In syn</a></h2></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../syn/index.html"><img class="rust-logo" src="../rust-logo.svg" alt="logo"></a><nav class="sub"><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><button type="button">?</button></div><div id="settings-menu" tabindex="-1"><a href="../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../wheel.svg"></a></div></div></form></nav></div><section id="main-content" class="content"><div class="main-heading"><h1 class="fqn"><span class="in-band">Enum <a href="index.html">syn</a>::<wbr><a class="enum" href="#">Pat</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span></h1><span class="out-of-band"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span></div><div class="docblock item-decl"><pre class="rust enum"><code>#[non_exhaustive]
pub enum Pat {
<details class="rustdoc-toggle type-contents-toggle"><summary class="hideme"><span>Show 16 variants</span></summary> Box(<a class="struct" href="struct.PatBox.html" title="struct syn::PatBox">PatBox</a>),
Ident(<a class="struct" href="struct.PatIdent.html" title="struct syn::PatIdent">PatIdent</a>),
Lit(<a class="struct" href="struct.PatLit.html" title="struct syn::PatLit">PatLit</a>),
Macro(<a class="struct" href="struct.PatMacro.html" title="struct syn::PatMacro">PatMacro</a>),
Or(<a class="struct" href="struct.PatOr.html" title="struct syn::PatOr">PatOr</a>),
Path(<a class="struct" href="struct.PatPath.html" title="struct syn::PatPath">PatPath</a>),
Range(<a class="struct" href="struct.PatRange.html" title="struct syn::PatRange">PatRange</a>),
Reference(<a class="struct" href="struct.PatReference.html" title="struct syn::PatReference">PatReference</a>),
Rest(<a class="struct" href="struct.PatRest.html" title="struct syn::PatRest">PatRest</a>),
Slice(<a class="struct" href="struct.PatSlice.html" title="struct syn::PatSlice">PatSlice</a>),
Struct(<a class="struct" href="struct.PatStruct.html" title="struct syn::PatStruct">PatStruct</a>),
Tuple(<a class="struct" href="struct.PatTuple.html" title="struct syn::PatTuple">PatTuple</a>),
TupleStruct(<a class="struct" href="struct.PatTupleStruct.html" title="struct syn::PatTupleStruct">PatTupleStruct</a>),
Type(<a class="struct" href="struct.PatType.html" title="struct syn::PatType">PatType</a>),
Verbatim(<a class="struct" href="../proc_macro2/struct.TokenStream.html" title="struct proc_macro2::TokenStream">TokenStream</a>),
Wild(<a class="struct" href="struct.PatWild.html" title="struct syn::PatWild">PatWild</a>),
</details>}</code></pre></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A pattern in a local binding, function signature, match expression, or
various other places.</p>
<p><em>This type is available only if Syn is built with the <code>&quot;full&quot;</code> feature.</em></p>
<h2 id="syntax-tree-enum"><a href="#syntax-tree-enum">Syntax tree enum</a></h2>
<p>This type is a <a href="enum.Expr.html#syntax-tree-enums">syntax tree enum</a>.</p>
</div></details><h2 id="variants" class="variants small-section-header">Variants (Non-exhaustive)<a href="#variants" class="anchor"></a></h2><details class="rustdoc-toggle non-exhaustive"><summary class="hideme"><span>This enum is marked as non-exhaustive</span></summary><div class="docblock">Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.</div></details><h3 id="variant.Box" class="variant small-section-header"><a href="#variant.Box" class="anchor field"></a><code>Box(<a class="struct" href="struct.PatBox.html" title="struct syn::PatBox">PatBox</a>)</code></h3><div class="docblock"><p>A box pattern: <code>box v</code>.</p>
</div><h3 id="variant.Ident" class="variant small-section-header"><a href="#variant.Ident" class="anchor field"></a><code>Ident(<a class="struct" href="struct.PatIdent.html" title="struct syn::PatIdent">PatIdent</a>)</code></h3><div class="docblock"><p>A pattern that binds a new variable: <code>ref mut binding @ SUBPATTERN</code>.</p>
</div><h3 id="variant.Lit" class="variant small-section-header"><a href="#variant.Lit" class="anchor field"></a><code>Lit(<a class="struct" href="struct.PatLit.html" title="struct syn::PatLit">PatLit</a>)</code></h3><div class="docblock"><p>A literal pattern: <code>0</code>.</p>
<p>This holds an <code>Expr</code> rather than a <code>Lit</code> because negative numbers
are represented as an <code>Expr::Unary</code>.</p>
</div><h3 id="variant.Macro" class="variant small-section-header"><a href="#variant.Macro" class="anchor field"></a><code>Macro(<a class="struct" href="struct.PatMacro.html" title="struct syn::PatMacro">PatMacro</a>)</code></h3><div class="docblock"><p>A macro in pattern position.</p>
</div><h3 id="variant.Or" class="variant small-section-header"><a href="#variant.Or" class="anchor field"></a><code>Or(<a class="struct" href="struct.PatOr.html" title="struct syn::PatOr">PatOr</a>)</code></h3><div class="docblock"><p>A pattern that matches any one of a set of cases.</p>
</div><h3 id="variant.Path" class="variant small-section-header"><a href="#variant.Path" class="anchor field"></a><code>Path(<a class="struct" href="struct.PatPath.html" title="struct syn::PatPath">PatPath</a>)</code></h3><div class="docblock"><p>A path pattern like <code>Color::Red</code>, optionally qualified with a
self-type.</p>
<p>Unqualified path patterns can legally refer to variants, structs,
constants or associated constants. Qualified path patterns like
<code>&lt;A&gt;::B::C</code> and <code>&lt;A as Trait&gt;::B::C</code> can only legally refer to
associated constants.</p>
</div><h3 id="variant.Range" class="variant small-section-header"><a href="#variant.Range" class="anchor field"></a><code>Range(<a class="struct" href="struct.PatRange.html" title="struct syn::PatRange">PatRange</a>)</code></h3><div class="docblock"><p>A range pattern: <code>1..=2</code>.</p>
</div><h3 id="variant.Reference" class="variant small-section-header"><a href="#variant.Reference" class="anchor field"></a><code>Reference(<a class="struct" href="struct.PatReference.html" title="struct syn::PatReference">PatReference</a>)</code></h3><div class="docblock"><p>A reference pattern: <code>&amp;mut var</code>.</p>
</div><h3 id="variant.Rest" class="variant small-section-header"><a href="#variant.Rest" class="anchor field"></a><code>Rest(<a class="struct" href="struct.PatRest.html" title="struct syn::PatRest">PatRest</a>)</code></h3><div class="docblock"><p>The dots in a tuple or slice pattern: <code>[0, 1, ..]</code></p>
</div><h3 id="variant.Slice" class="variant small-section-header"><a href="#variant.Slice" class="anchor field"></a><code>Slice(<a class="struct" href="struct.PatSlice.html" title="struct syn::PatSlice">PatSlice</a>)</code></h3><div class="docblock"><p>A dynamically sized slice pattern: <code>[a, b, ref i @ .., y, z]</code>.</p>
</div><h3 id="variant.Struct" class="variant small-section-header"><a href="#variant.Struct" class="anchor field"></a><code>Struct(<a class="struct" href="struct.PatStruct.html" title="struct syn::PatStruct">PatStruct</a>)</code></h3><div class="docblock"><p>A struct or struct variant pattern: <code>Variant { x, y, .. }</code>.</p>
</div><h3 id="variant.Tuple" class="variant small-section-header"><a href="#variant.Tuple" class="anchor field"></a><code>Tuple(<a class="struct" href="struct.PatTuple.html" title="struct syn::PatTuple">PatTuple</a>)</code></h3><div class="docblock"><p>A tuple pattern: <code>(a, b)</code>.</p>
</div><h3 id="variant.TupleStruct" class="variant small-section-header"><a href="#variant.TupleStruct" class="anchor field"></a><code>TupleStruct(<a class="struct" href="struct.PatTupleStruct.html" title="struct syn::PatTupleStruct">PatTupleStruct</a>)</code></h3><div class="docblock"><p>A tuple struct or tuple variant pattern: <code>Variant(x, y, .., z)</code>.</p>
</div><h3 id="variant.Type" class="variant small-section-header"><a href="#variant.Type" class="anchor field"></a><code>Type(<a class="struct" href="struct.PatType.html" title="struct syn::PatType">PatType</a>)</code></h3><div class="docblock"><p>A type ascription pattern: <code>foo: f64</code>.</p>
</div><h3 id="variant.Verbatim" class="variant small-section-header"><a href="#variant.Verbatim" class="anchor field"></a><code>Verbatim(<a class="struct" href="../proc_macro2/struct.TokenStream.html" title="struct proc_macro2::TokenStream">TokenStream</a>)</code></h3><div class="docblock"><p>Tokens in pattern position not interpreted by Syn.</p>
</div><h3 id="variant.Wild" class="variant small-section-header"><a href="#variant.Wild" class="anchor field"></a><code>Wild(<a class="struct" href="struct.PatWild.html" title="struct syn::PatWild">PatWild</a>)</code></h3><div class="docblock"><p>A pattern that matches any value: <code>_</code>.</p>
</div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor"></a></h2><div id="trait-implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Clone-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/gen/clone.rs.html#1462-1485">source</a></span><a href="#impl-Clone-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/gen/clone.rs.html#1463-1484">source</a></span><a href="#method.clone" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/clone/trait.Clone.html#tymethod.clone" class="fnname">clone</a>(&amp;self) -&gt; Self</h4></section></summary><div class='docblock'><p>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.64.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="srclink" href="https://doc.rust-lang.org/1.64.0/src/core/clone.rs.html#132-134">source</a></span><a href="#method.clone_from" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/clone/trait.Clone.html#method.clone_from" class="fnname">clone_from</a>(&amp;mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.64.0/std/primitive.reference.html">&amp;</a>Self)</h4></section></summary><div class='docblock'><p>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.64.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-From%3CPatBox%3E-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#impl-From%3CPatBox%3E-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="struct.PatBox.html" title="struct syn::PatBox">PatBox</a>&gt; for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.from" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#method.from" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="struct.PatBox.html" title="struct syn::PatBox">PatBox</a>) -&gt; <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h4></section></summary><div class='docblock'><p>Converts to this type from the input type.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-From%3CPatIdent%3E-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#impl-From%3CPatIdent%3E-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="struct.PatIdent.html" title="struct syn::PatIdent">PatIdent</a>&gt; for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#method.from-1" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="struct.PatIdent.html" title="struct syn::PatIdent">PatIdent</a>) -&gt; <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h4></section></summary><div class='docblock'><p>Converts to this type from the input type.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-From%3CPatLit%3E-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#impl-From%3CPatLit%3E-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="struct.PatLit.html" title="struct syn::PatLit">PatLit</a>&gt; for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.from-2" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#method.from-2" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="struct.PatLit.html" title="struct syn::PatLit">PatLit</a>) -&gt; <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h4></section></summary><div class='docblock'><p>Converts to this type from the input type.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-From%3CPatMacro%3E-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#impl-From%3CPatMacro%3E-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="struct.PatMacro.html" title="struct syn::PatMacro">PatMacro</a>&gt; for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.from-3" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#method.from-3" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="struct.PatMacro.html" title="struct syn::PatMacro">PatMacro</a>) -&gt; <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h4></section></summary><div class='docblock'><p>Converts to this type from the input type.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-From%3CPatOr%3E-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#impl-From%3CPatOr%3E-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="struct.PatOr.html" title="struct syn::PatOr">PatOr</a>&gt; for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.from-4" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#method.from-4" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="struct.PatOr.html" title="struct syn::PatOr">PatOr</a>) -&gt; <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h4></section></summary><div class='docblock'><p>Converts to this type from the input type.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-From%3CPatPath%3E-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#impl-From%3CPatPath%3E-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="struct.PatPath.html" title="struct syn::PatPath">PatPath</a>&gt; for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.from-5" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#method.from-5" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="struct.PatPath.html" title="struct syn::PatPath">PatPath</a>) -&gt; <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h4></section></summary><div class='docblock'><p>Converts to this type from the input type.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-From%3CPatRange%3E-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#impl-From%3CPatRange%3E-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="struct.PatRange.html" title="struct syn::PatRange">PatRange</a>&gt; for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.from-6" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#method.from-6" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="struct.PatRange.html" title="struct syn::PatRange">PatRange</a>) -&gt; <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h4></section></summary><div class='docblock'><p>Converts to this type from the input type.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-From%3CPatReference%3E-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#impl-From%3CPatReference%3E-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="struct.PatReference.html" title="struct syn::PatReference">PatReference</a>&gt; for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.from-7" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#method.from-7" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="struct.PatReference.html" title="struct syn::PatReference">PatReference</a>) -&gt; <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h4></section></summary><div class='docblock'><p>Converts to this type from the input type.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-From%3CPatRest%3E-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#impl-From%3CPatRest%3E-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="struct.PatRest.html" title="struct syn::PatRest">PatRest</a>&gt; for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.from-8" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#method.from-8" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="struct.PatRest.html" title="struct syn::PatRest">PatRest</a>) -&gt; <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h4></section></summary><div class='docblock'><p>Converts to this type from the input type.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-From%3CPatSlice%3E-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#impl-From%3CPatSlice%3E-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="struct.PatSlice.html" title="struct syn::PatSlice">PatSlice</a>&gt; for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.from-9" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#method.from-9" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="struct.PatSlice.html" title="struct syn::PatSlice">PatSlice</a>) -&gt; <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h4></section></summary><div class='docblock'><p>Converts to this type from the input type.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-From%3CPatStruct%3E-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#impl-From%3CPatStruct%3E-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="struct.PatStruct.html" title="struct syn::PatStruct">PatStruct</a>&gt; for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.from-10" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#method.from-10" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="struct.PatStruct.html" title="struct syn::PatStruct">PatStruct</a>) -&gt; <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h4></section></summary><div class='docblock'><p>Converts to this type from the input type.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-From%3CPatTuple%3E-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#impl-From%3CPatTuple%3E-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="struct.PatTuple.html" title="struct syn::PatTuple">PatTuple</a>&gt; for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.from-11" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#method.from-11" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="struct.PatTuple.html" title="struct syn::PatTuple">PatTuple</a>) -&gt; <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h4></section></summary><div class='docblock'><p>Converts to this type from the input type.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-From%3CPatTupleStruct%3E-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#impl-From%3CPatTupleStruct%3E-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="struct.PatTupleStruct.html" title="struct syn::PatTupleStruct">PatTupleStruct</a>&gt; for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.from-12" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#method.from-12" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="struct.PatTupleStruct.html" title="struct syn::PatTupleStruct">PatTupleStruct</a>) -&gt; <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h4></section></summary><div class='docblock'><p>Converts to this type from the input type.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-From%3CPatType%3E-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#impl-From%3CPatType%3E-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="struct.PatType.html" title="struct syn::PatType">PatType</a>&gt; for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.from-13" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#method.from-13" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="struct.PatType.html" title="struct syn::PatType">PatType</a>) -&gt; <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h4></section></summary><div class='docblock'><p>Converts to this type from the input type.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-From%3CPatWild%3E-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#impl-From%3CPatWild%3E-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="struct.PatWild.html" title="struct syn::PatWild">PatWild</a>&gt; for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.from-14" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#method.from-14" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="struct.PatWild.html" title="struct syn::PatWild">PatWild</a>) -&gt; <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h4></section></summary><div class='docblock'><p>Converts to this type from the input type.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-Parse-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#319-370">source</a></span><a href="#impl-Parse-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="parse/trait.Parse.html" title="trait syn::parse::Parse">Parse</a> for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section></summary><div class="impl-items"><section id="method.parse" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#320-369">source</a></span><a href="#method.parse" class="anchor"></a><h4 class="code-header">fn <a href="parse/trait.Parse.html#tymethod.parse" class="fnname">parse</a>(input: <a class="type" href="parse/type.ParseStream.html" title="type syn::parse::ParseStream">ParseStream</a>&lt;'_&gt;) -&gt; <a class="type" href="parse/type.Result.html" title="type syn::parse::Result">Result</a>&lt;Self&gt;</h4></section></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><section id="impl-ToTokens-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#impl-ToTokens-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="../quote/to_tokens/trait.ToTokens.html" title="trait quote::to_tokens::ToTokens">ToTokens</a> for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.to_tokens" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/pat.rs.html#5-98">source</a></span><a href="#method.to_tokens" class="anchor"></a><h4 class="code-header">fn <a href="../quote/to_tokens/trait.ToTokens.html#tymethod.to_tokens" class="fnname">to_tokens</a>(&amp;self, tokens: &amp;mut <a class="struct" href="../proc_macro2/struct.TokenStream.html" title="struct proc_macro2::TokenStream">TokenStream</a>)</h4></section></summary><div class='docblock'><p>Write <code>self</code> to the given <code>TokenStream</code>. <a href="../quote/to_tokens/trait.ToTokens.html#tymethod.to_tokens">Read more</a></p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.to_token_stream" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/quote/to_tokens.rs.html#59">source</a></span><a href="#method.to_token_stream" class="anchor"></a><h4 class="code-header">fn <a href="../quote/to_tokens/trait.ToTokens.html#method.to_token_stream" class="fnname">to_token_stream</a>(&amp;self) -&gt; <a class="struct" href="../proc_macro2/struct.TokenStream.html" title="struct proc_macro2::TokenStream">TokenStream</a></h4></section></summary><div class='docblock'><p>Convert <code>self</code> directly into a <code>TokenStream</code> object. <a href="../quote/to_tokens/trait.ToTokens.html#method.to_token_stream">Read more</a></p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.into_token_stream" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/quote/to_tokens.rs.html#69-71">source</a></span><a href="#method.into_token_stream" class="anchor"></a><h4 class="code-header">fn <a href="../quote/to_tokens/trait.ToTokens.html#method.into_token_stream" class="fnname">into_token_stream</a>(self) -&gt; <a class="struct" href="../proc_macro2/struct.TokenStream.html" title="struct proc_macro2::TokenStream">TokenStream</a></h4></section></summary><div class='docblock'><p>Convert <code>self</code> directly into a <code>TokenStream</code> object. <a href="../quote/to_tokens/trait.ToTokens.html#method.into_token_stream">Read more</a></p>
</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor"></a></h2><div id="synthetic-implementations-list"><section id="impl-RefUnwindSafe-for-Pat" class="impl has-srclink"><a href="#impl-RefUnwindSafe-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section><section id="impl-Send-for-Pat" class="impl has-srclink"><a href="#impl-Send-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl !<a class="trait" href="https://doc.rust-lang.org/1.64.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section><section id="impl-Sync-for-Pat" class="impl has-srclink"><a href="#impl-Sync-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl !<a class="trait" href="https://doc.rust-lang.org/1.64.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section><section id="impl-Unpin-for-Pat" class="impl has-srclink"><a href="#impl-Unpin-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section><section id="impl-UnwindSafe-for-Pat" class="impl has-srclink"><a href="#impl-UnwindSafe-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="enum.Pat.html" title="enum syn::Pat">Pat</a></h3></section></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor"></a></h2><div id="blanket-implementations-list"><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Any-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.64.0/src/core/any.rs.html#203">source</a></span><a href="#impl-Any-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.64.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.64.0/src/core/any.rs.html#204">source</a></span><a href="#method.type_id" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/any/trait.Any.html#tymethod.type_id" class="fnname">type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.64.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'><p>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.64.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.64.0/src/core/borrow.rs.html#209">source</a></span><a href="#impl-Borrow%3CT%3E-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;T&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?<a class="trait" href="https://doc.rust-lang.org/1.64.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/91522" title="Tracking issue for const_borrow">unstable</a></span> · <a class="srclink" href="https://doc.rust-lang.org/1.64.0/src/core/borrow.rs.html#211">source</a></span><a href="#method.borrow" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fnname">borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.64.0/std/primitive.reference.html">&amp;</a>T</h4></section></summary><div class='docblock'><p>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.64.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.64.0/src/core/borrow.rs.html#218">source</a></span><a href="#impl-BorrowMut%3CT%3E-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;T&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?<a class="trait" href="https://doc.rust-lang.org/1.64.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/91522" title="Tracking issue for const_borrow">unstable</a></span> · <a class="srclink" href="https://doc.rust-lang.org/1.64.0/src/core/borrow.rs.html#219">source</a></span><a href="#method.borrow_mut" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fnname">borrow_mut</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.64.0/std/primitive.reference.html">&amp;mut </a>T</h4></section></summary><div class='docblock'><p>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.64.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.64.0/src/core/convert/mod.rs.html#557">source</a></span><a href="#impl-From%3CT%3E-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for T</h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.from-15" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/88674" title="Tracking issue for const_convert">unstable</a></span> · <a class="srclink" href="https://doc.rust-lang.org/1.64.0/src/core/convert/mod.rs.html#559">source</a></span><a href="#method.from-15" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(t: T) -&gt; T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.64.0/src/core/convert/mod.rs.html#541">source</a></span><a href="#impl-Into%3CU%3E-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;U&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt;,&nbsp;</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.into" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/88674" title="Tracking issue for const_convert">unstable</a></span> · <a class="srclink" href="https://doc.rust-lang.org/1.64.0/src/core/convert/mod.rs.html#549">source</a></span><a href="#method.into" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.Into.html#tymethod.into" class="fnname">into</a>(self) -&gt; U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p>
<p>That is, this conversion is whatever the implementation of
<code><a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.From.html" title="From">From</a>&lt;T&gt; for U</code> chooses to do.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Spanned-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/spanned.rs.html#110-114">source</a></span><a href="#impl-Spanned-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="spanned/trait.Spanned.html" title="trait syn::spanned::Spanned">Spanned</a> for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: Spanned + ?<a class="trait" href="https://doc.rust-lang.org/1.64.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.span" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="../src/syn/spanned.rs.html#111-113">source</a></span><a href="#method.span" class="anchor"></a><h4 class="code-header">fn <a href="spanned/trait.Spanned.html#tymethod.span" class="fnname">span</a>(&amp;self) -&gt; <a class="struct" href="../proc_macro2/struct.Span.html" title="struct proc_macro2::Span">Span</a></h4></section></summary><div class='docblock'><p>Returns a <code>Span</code> covering the complete contents of this syntax tree
node, or <a href="../proc_macro2/struct.Span.html#method.call_site"><code>Span::call_site()</code></a> if this node is empty. <a href="spanned/trait.Spanned.html#tymethod.span">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-ToOwned-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.64.0/src/alloc/borrow.rs.html#83">source</a></span><a href="#impl-ToOwned-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.64.0/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,&nbsp;</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Owned" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Owned" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.64.0/alloc/borrow/trait.ToOwned.html#associatedtype.Owned" class="associatedtype">Owned</a> = T</h4></section></summary><div class='docblock'><p>The resulting type after obtaining ownership.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.to_owned" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.64.0/src/alloc/borrow.rs.html#88">source</a></span><a href="#method.to_owned" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned" class="fnname">to_owned</a>(&amp;self) -&gt; T</h4></section></summary><div class='docblock'><p>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/1.64.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.clone_into" class="method trait-impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.64.0/src/alloc/borrow.rs.html#92">source</a></span><a href="#method.clone_into" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/alloc/borrow/trait.ToOwned.html#method.clone_into" class="fnname">clone_into</a>(&amp;self, target: <a class="primitive" href="https://doc.rust-lang.org/1.64.0/std/primitive.reference.html">&amp;mut </a>T)</h4></section></summary><div class='docblock'><p>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/1.64.0/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.64.0/src/core/convert/mod.rs.html#598">source</a></span><a href="#impl-TryFrom%3CU%3E-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;T&gt;,&nbsp;</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Error" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.64.0/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'><p>The type returned in the event of a conversion error.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/88674" title="Tracking issue for const_convert">unstable</a></span> · <a class="srclink" href="https://doc.rust-lang.org/1.64.0/src/core/convert/mod.rs.html#604">source</a></span><a href="#method.try_from" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fnname">try_from</a>(value: U) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.64.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;T, &lt;T as <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</h4></section></summary><div class='docblock'><p>Performs the conversion.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-Pat" class="impl has-srclink"><span class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.64.0/src/core/convert/mod.rs.html#583">source</a></span><a href="#impl-TryInto%3CU%3E-for-Pat" class="anchor"></a><h3 class="code-header in-band">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a>&lt;U&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;,&nbsp;</span></h3></section></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl has-srclink"><a href="#associatedtype.Error-1" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = &lt;U as <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'><p>The type returned in the event of a conversion error.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl has-srclink"><span class="rightside"><span class="since" title="const unstable">const: <a href="https://github.com/rust-lang/rust/issues/88674" title="Tracking issue for const_convert">unstable</a></span> · <a class="srclink" href="https://doc.rust-lang.org/1.64.0/src/core/convert/mod.rs.html#589">source</a></span><a href="#method.try_into" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryInto.html#tymethod.try_into" class="fnname">try_into</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.64.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;U, &lt;U as <a class="trait" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.64.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</h4></section></summary><div class='docblock'><p>Performs the conversion.</p>
</div></details></div></details></div></section></div></main><div id="rustdoc-vars" data-root-path="../" data-current-crate="syn" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.64.0 (a55dd71d5 2022-09-19)" ></div></body></html>