mcquery-rs/doc/syn/enum.Expr.html

260 lines
96 KiB
HTML
Raw 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="API documentation for the Rust `Expr` enum in crate `syn`."><meta name="keywords" content="rust, rustlang, rust-lang, Expr"><title>syn::Expr - Rust</title><link rel="stylesheet" type="text/css" href="../normalize.css"><link rel="stylesheet" type="text/css" href="../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../light.css" id="themeStyle"><link rel="stylesheet" type="text/css" href="../dark.css" disabled ><link rel="stylesheet" type="text/css" href="../ayu.css" disabled ><script id="default-settings"></script><script src="../storage.js"></script><noscript><link rel="stylesheet" href="../noscript.css"></noscript><link rel="icon" type="image/svg+xml" href="../favicon.svg">
<link rel="alternate icon" type="image/png" href="../favicon-16x16.png">
<link rel="alternate icon" type="image/png" href="../favicon-32x32.png"><style type="text/css">#crate-search{background-image:url("../down-arrow.svg");}</style></head><body class="rustdoc enum"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">&#9776;</div><a href='../syn/index.html'><div class='logo-container rust-logo'><img src='../rust-logo.png' alt='logo'></div></a><p class="location">Enum Expr</p><div class="sidebar-elems"><div class="block items"><a class="sidebar-title" href="#variants">Variants</a><div class="sidebar-links"><a href="#variant.Array">Array</a><a href="#variant.Assign">Assign</a><a href="#variant.AssignOp">AssignOp</a><a href="#variant.Async">Async</a><a href="#variant.Await">Await</a><a href="#variant.Binary">Binary</a><a href="#variant.Block">Block</a><a href="#variant.Box">Box</a><a href="#variant.Break">Break</a><a href="#variant.Call">Call</a><a href="#variant.Cast">Cast</a><a href="#variant.Closure">Closure</a><a href="#variant.Continue">Continue</a><a href="#variant.Field">Field</a><a href="#variant.ForLoop">ForLoop</a><a href="#variant.Group">Group</a><a href="#variant.If">If</a><a href="#variant.Index">Index</a><a href="#variant.Let">Let</a><a href="#variant.Lit">Lit</a><a href="#variant.Loop">Loop</a><a href="#variant.Macro">Macro</a><a href="#variant.Match">Match</a><a href="#variant.MethodCall">MethodCall</a><a href="#variant.Paren">Paren</a><a href="#variant.Path">Path</a><a href="#variant.Range">Range</a><a href="#variant.Reference">Reference</a><a href="#variant.Repeat">Repeat</a><a href="#variant.Return">Return</a><a href="#variant.Struct">Struct</a><a href="#variant.Try">Try</a><a href="#variant.TryBlock">TryBlock</a><a href="#variant.Tuple">Tuple</a><a href="#variant.Type">Type</a><a href="#variant.Unary">Unary</a><a href="#variant.Unsafe">Unsafe</a><a href="#variant.Verbatim">Verbatim</a><a href="#variant.While">While</a><a href="#variant.Yield">Yield</a></div><a class="sidebar-title" href="#implementations">Methods</a><div class="sidebar-links"><a href="#method.parse_without_eager_brace">parse_without_eager_brace</a></div><a class="sidebar-title" href="#trait-implementations">Trait Implementations</a><div class="sidebar-links"><a href="#impl-Clone">Clone</a><a href="#impl-From%3CExprArray%3E">From&lt;ExprArray&gt;</a><a href="#impl-From%3CExprAssign%3E">From&lt;ExprAssign&gt;</a><a href="#impl-From%3CExprAssignOp%3E">From&lt;ExprAssignOp&gt;</a><a href="#impl-From%3CExprAsync%3E">From&lt;ExprAsync&gt;</a><a href="#impl-From%3CExprAwait%3E">From&lt;ExprAwait&gt;</a><a href="#impl-From%3CExprBinary%3E">From&lt;ExprBinary&gt;</a><a href="#impl-From%3CExprBlock%3E">From&lt;ExprBlock&gt;</a><a href="#impl-From%3CExprBox%3E">From&lt;ExprBox&gt;</a><a href="#impl-From%3CExprBreak%3E">From&lt;ExprBreak&gt;</a><a href="#impl-From%3CExprCall%3E">From&lt;ExprCall&gt;</a><a href="#impl-From%3CExprCast%3E">From&lt;ExprCast&gt;</a><a href="#impl-From%3CExprClosure%3E">From&lt;ExprClosure&gt;</a><a href="#impl-From%3CExprContinue%3E">From&lt;ExprContinue&gt;</a><a href="#impl-From%3CExprField%3E">From&lt;ExprField&gt;</a><a href="#impl-From%3CExprForLoop%3E">From&lt;ExprForLoop&gt;</a><a href="#impl-From%3CExprGroup%3E">From&lt;ExprGroup&gt;</a><a href="#impl-From%3CExprIf%3E">From&lt;ExprIf&gt;</a><a href="#impl-From%3CExprIndex%3E">From&lt;ExprIndex&gt;</a><a href="#impl-From%3CExprLet%3E">From&lt;ExprLet&gt;</a><a href="#impl-From%3CExprLit%3E">From&lt;ExprLit&gt;</a><a href="#impl-From%3CExprLoop%3E">From&lt;ExprLoop&gt;</a><a href="#impl-From%3CExprMacro%3E">From&lt;ExprMacro&gt;</a><a href="#impl-From%3CExprMatch%3E">From&lt;ExprMatch&gt;</a><a href="#impl-From%3CExprMethodCall%3E">From&lt;ExprMethodCall&gt;</a><a href="#impl-From%3CExprParen%3E">From&lt;ExprParen&gt;</a><a href="#impl-From%3CExprPath%3E">From&lt;ExprPath&gt;</a><a href="#impl-From%3CExprRange%3E">From&lt;ExprRange&gt;</a><a href="#impl-From%3CExprReference%3E">From&lt;ExprReference&gt;</a><a href="#impl-From%3CExprRepeat%3E">From&lt;ExprRepeat&gt;</a><a href="#impl-From%3CExprReturn%3E">From&lt;ExprReturn&gt;</a><a href="#impl-From%3CExprStruct%3E">From&lt;ExprStruct&gt;</a><a href="#impl-From%3CExprTry%3E">From&lt;ExprTry&gt;</a><a href="#impl-From%3CExprTryBlock%3E">From&lt;ExprTryBlock&gt;</a><a href="#impl-From%3CExprTuple%3E">From&lt;ExprTuple&gt;</a><a href="#impl-From%3CExprType%3E">From&lt;ExprType&gt;</a><a href="#impl-From%3CExprUnary%3E">From&lt;ExprUnary&gt;</a><a href="#impl-From%3CExprUnsafe%3E">From&lt;ExprUnsafe&gt;</a><a href="#impl-From%3CExprWhile%3E">From&lt;ExprWhile&gt;</a><a href="#impl-From%3CExprYield%3E">From&lt;ExprYield&gt;</a><a href="#impl-Parse">Parse</a><a href="#impl-ToTokens">ToTokens</a></div><a class="sidebar-title" href="#synthetic-implementations">Auto Trait Implementations</a><div class="sidebar-links"><a href="#impl-RefUnwindSafe">RefUnwindSafe</a><a href="#impl-Send">!Send</a><a href="#impl-Sync">!Sync</a><a href="#impl-Unpin">Unpin</a><a href="#impl-UnwindSafe">UnwindSafe</a></div><a class="sidebar-title" href="#blanket-implementations">Blanket Implementations</a><div class="sidebar-links"><a href="#impl-Any">Any</a><a href="#impl-Borrow%3CT%3E">Borrow&lt;T&gt;</a><a href="#impl-BorrowMut%3CT%3E">BorrowMut&lt;T&gt;</a><a href="#impl-From%3CT%3E">From&lt;T&gt;</a><a href="#impl-Into%3CU%3E">Into&lt;U&gt;</a><a href="#impl-Spanned">Spanned</a><a href="#impl-ToOwned">ToOwned</a><a href="#impl-TryFrom%3CU%3E">TryFrom&lt;U&gt;</a><a href="#impl-TryInto%3CU%3E">TryInto&lt;U&gt;</a></div></div><p class="location"><a href="index.html">syn</a></p><script>window.sidebarCurrent = {name: "Expr", ty: "enum", relpath: ""};</script><script defer src="sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu"><img src="../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices" role="menu"></div></div><script src="../theme.js"></script><nav class="sub"><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" disabled autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><span class="help-button">?</span>
<a id="settings-menu" href="../settings.html"><img src="../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class="fqn"><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></span><span class="in-band">Enum <a href="index.html">syn</a>::<wbr><a class="enum" href="">Expr</a></span></h1><div class="docblock type-decl hidden-by-usual-hider"><pre class="rust enum">pub enum Expr {
Array(<a class="struct" href="../syn/struct.ExprArray.html" title="struct syn::ExprArray">ExprArray</a>),
Assign(<a class="struct" href="../syn/struct.ExprAssign.html" title="struct syn::ExprAssign">ExprAssign</a>),
AssignOp(<a class="struct" href="../syn/struct.ExprAssignOp.html" title="struct syn::ExprAssignOp">ExprAssignOp</a>),
Async(<a class="struct" href="../syn/struct.ExprAsync.html" title="struct syn::ExprAsync">ExprAsync</a>),
Await(<a class="struct" href="../syn/struct.ExprAwait.html" title="struct syn::ExprAwait">ExprAwait</a>),
Binary(<a class="struct" href="../syn/struct.ExprBinary.html" title="struct syn::ExprBinary">ExprBinary</a>),
Block(<a class="struct" href="../syn/struct.ExprBlock.html" title="struct syn::ExprBlock">ExprBlock</a>),
Box(<a class="struct" href="../syn/struct.ExprBox.html" title="struct syn::ExprBox">ExprBox</a>),
Break(<a class="struct" href="../syn/struct.ExprBreak.html" title="struct syn::ExprBreak">ExprBreak</a>),
Call(<a class="struct" href="../syn/struct.ExprCall.html" title="struct syn::ExprCall">ExprCall</a>),
Cast(<a class="struct" href="../syn/struct.ExprCast.html" title="struct syn::ExprCast">ExprCast</a>),
Closure(<a class="struct" href="../syn/struct.ExprClosure.html" title="struct syn::ExprClosure">ExprClosure</a>),
Continue(<a class="struct" href="../syn/struct.ExprContinue.html" title="struct syn::ExprContinue">ExprContinue</a>),
Field(<a class="struct" href="../syn/struct.ExprField.html" title="struct syn::ExprField">ExprField</a>),
ForLoop(<a class="struct" href="../syn/struct.ExprForLoop.html" title="struct syn::ExprForLoop">ExprForLoop</a>),
Group(<a class="struct" href="../syn/struct.ExprGroup.html" title="struct syn::ExprGroup">ExprGroup</a>),
If(<a class="struct" href="../syn/struct.ExprIf.html" title="struct syn::ExprIf">ExprIf</a>),
Index(<a class="struct" href="../syn/struct.ExprIndex.html" title="struct syn::ExprIndex">ExprIndex</a>),
Let(<a class="struct" href="../syn/struct.ExprLet.html" title="struct syn::ExprLet">ExprLet</a>),
Lit(<a class="struct" href="../syn/struct.ExprLit.html" title="struct syn::ExprLit">ExprLit</a>),
Loop(<a class="struct" href="../syn/struct.ExprLoop.html" title="struct syn::ExprLoop">ExprLoop</a>),
Macro(<a class="struct" href="../syn/struct.ExprMacro.html" title="struct syn::ExprMacro">ExprMacro</a>),
Match(<a class="struct" href="../syn/struct.ExprMatch.html" title="struct syn::ExprMatch">ExprMatch</a>),
MethodCall(<a class="struct" href="../syn/struct.ExprMethodCall.html" title="struct syn::ExprMethodCall">ExprMethodCall</a>),
Paren(<a class="struct" href="../syn/struct.ExprParen.html" title="struct syn::ExprParen">ExprParen</a>),
Path(<a class="struct" href="../syn/struct.ExprPath.html" title="struct syn::ExprPath">ExprPath</a>),
Range(<a class="struct" href="../syn/struct.ExprRange.html" title="struct syn::ExprRange">ExprRange</a>),
Reference(<a class="struct" href="../syn/struct.ExprReference.html" title="struct syn::ExprReference">ExprReference</a>),
Repeat(<a class="struct" href="../syn/struct.ExprRepeat.html" title="struct syn::ExprRepeat">ExprRepeat</a>),
Return(<a class="struct" href="../syn/struct.ExprReturn.html" title="struct syn::ExprReturn">ExprReturn</a>),
Struct(<a class="struct" href="../syn/struct.ExprStruct.html" title="struct syn::ExprStruct">ExprStruct</a>),
Try(<a class="struct" href="../syn/struct.ExprTry.html" title="struct syn::ExprTry">ExprTry</a>),
TryBlock(<a class="struct" href="../syn/struct.ExprTryBlock.html" title="struct syn::ExprTryBlock">ExprTryBlock</a>),
Tuple(<a class="struct" href="../syn/struct.ExprTuple.html" title="struct syn::ExprTuple">ExprTuple</a>),
Type(<a class="struct" href="../syn/struct.ExprType.html" title="struct syn::ExprType">ExprType</a>),
Unary(<a class="struct" href="../syn/struct.ExprUnary.html" title="struct syn::ExprUnary">ExprUnary</a>),
Unsafe(<a class="struct" href="../syn/struct.ExprUnsafe.html" title="struct syn::ExprUnsafe">ExprUnsafe</a>),
Verbatim(<a class="struct" href="../proc_macro2/struct.TokenStream.html" title="struct proc_macro2::TokenStream">TokenStream</a>),
While(<a class="struct" href="../syn/struct.ExprWhile.html" title="struct syn::ExprWhile">ExprWhile</a>),
Yield(<a class="struct" href="../syn/struct.ExprYield.html" title="struct syn::ExprYield">ExprYield</a>),
// some variants omitted
}</pre></div><div class="docblock"><p>A Rust expression.</p>
<p><em>This type is available only if Syn is built with the <code>&quot;derive&quot;</code> or <code>&quot;full&quot;</code>
feature, but most of the variants are not available unless &quot;full&quot; is enabled.</em></p>
<h1 id="syntax-tree-enums" class="section-header"><a href="#syntax-tree-enums">Syntax tree enums</a></h1>
<p>This type is a syntax tree enum. In Syn this and other syntax tree enums
are designed to be traversed using the following rebinding idiom.</p>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">let</span> <span class="ident">expr</span>: <span class="ident">Expr</span> <span class="op">=</span> <span class="comment">/* ... */</span>;
<span class="kw">match</span> <span class="ident">expr</span> {
<span class="ident">Expr</span>::<span class="ident">MethodCall</span>(<span class="ident">expr</span>) <span class="op">=</span><span class="op">&gt;</span> {
<span class="comment">/* ... */</span>
}
<span class="ident">Expr</span>::<span class="ident">Cast</span>(<span class="ident">expr</span>) <span class="op">=</span><span class="op">&gt;</span> {
<span class="comment">/* ... */</span>
}
<span class="ident">Expr</span>::<span class="ident">If</span>(<span class="ident">expr</span>) <span class="op">=</span><span class="op">&gt;</span> {
<span class="comment">/* ... */</span>
}
<span class="comment">/* ... */</span></pre></div>
<p>We begin with a variable <code>expr</code> of type <code>Expr</code> that has no fields
(because it is an enum), and by matching on it and rebinding a variable
with the same name <code>expr</code> we effectively imbue our variable with all of
the data fields provided by the variant that it turned out to be. So for
example above if we ended up in the <code>MethodCall</code> case then we get to use
<code>expr.receiver</code>, <code>expr.args</code> etc; if we ended up in the <code>If</code> case we get
to use <code>expr.cond</code>, <code>expr.then_branch</code>, <code>expr.else_branch</code>.</p>
<p>This approach avoids repeating the variant names twice on every line.</p>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="comment">// Repetitive; recommend not doing this.</span>
<span class="kw">match</span> <span class="ident">expr</span> {
<span class="ident">Expr</span>::<span class="ident">MethodCall</span>(<span class="ident">ExprMethodCall</span> { <span class="ident">method</span>, <span class="ident">args</span>, .. }) <span class="op">=</span><span class="op">&gt;</span> {</pre></div>
<p>In general, the name to which a syntax tree enum variant is bound should
be a suitable name for the complete syntax tree enum type.</p>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="comment">// Binding is called `base` which is the name I would use if I were</span>
<span class="comment">// assigning `*discriminant.base` without an `if let`.</span>
<span class="kw">if</span> <span class="kw">let</span> <span class="ident">Expr</span>::<span class="ident">Tuple</span>(<span class="ident">base</span>) <span class="op">=</span> <span class="kw-2">*</span><span class="ident">discriminant</span>.<span class="ident">base</span> {</pre></div>
<p>A sign that you may not be choosing the right variable names is if you
see names getting repeated in your code, like accessing
<code>receiver.receiver</code> or <code>pat.pat</code> or <code>cond.cond</code>.</p>
</div><h2 id="variants" class="variants small-section-header">
Variants<a href="#variants" class="anchor"></a></h2>
<div id="variant.Array" class="variant small-section-header"><a href="#variant.Array" class="anchor field"></a><code>Array(<a class="struct" href="../syn/struct.ExprArray.html" title="struct syn::ExprArray">ExprArray</a>)</code></div><div class="docblock"><p>A slice literal expression: <code>[a, b, c, d]</code>.</p>
</div><div id="variant.Assign" class="variant small-section-header"><a href="#variant.Assign" class="anchor field"></a><code>Assign(<a class="struct" href="../syn/struct.ExprAssign.html" title="struct syn::ExprAssign">ExprAssign</a>)</code></div><div class="docblock"><p>An assignment expression: <code>a = compute()</code>.</p>
</div><div id="variant.AssignOp" class="variant small-section-header"><a href="#variant.AssignOp" class="anchor field"></a><code>AssignOp(<a class="struct" href="../syn/struct.ExprAssignOp.html" title="struct syn::ExprAssignOp">ExprAssignOp</a>)</code></div><div class="docblock"><p>A compound assignment expression: <code>counter += 1</code>.</p>
</div><div id="variant.Async" class="variant small-section-header"><a href="#variant.Async" class="anchor field"></a><code>Async(<a class="struct" href="../syn/struct.ExprAsync.html" title="struct syn::ExprAsync">ExprAsync</a>)</code></div><div class="docblock"><p>An async block: <code>async { ... }</code>.</p>
</div><div id="variant.Await" class="variant small-section-header"><a href="#variant.Await" class="anchor field"></a><code>Await(<a class="struct" href="../syn/struct.ExprAwait.html" title="struct syn::ExprAwait">ExprAwait</a>)</code></div><div class="docblock"><p>An await expression: <code>fut.await</code>.</p>
</div><div id="variant.Binary" class="variant small-section-header"><a href="#variant.Binary" class="anchor field"></a><code>Binary(<a class="struct" href="../syn/struct.ExprBinary.html" title="struct syn::ExprBinary">ExprBinary</a>)</code></div><div class="docblock"><p>A binary operation: <code>a + b</code>, <code>a * b</code>.</p>
</div><div id="variant.Block" class="variant small-section-header"><a href="#variant.Block" class="anchor field"></a><code>Block(<a class="struct" href="../syn/struct.ExprBlock.html" title="struct syn::ExprBlock">ExprBlock</a>)</code></div><div class="docblock"><p>A blocked scope: <code>{ ... }</code>.</p>
</div><div id="variant.Box" class="variant small-section-header"><a href="#variant.Box" class="anchor field"></a><code>Box(<a class="struct" href="../syn/struct.ExprBox.html" title="struct syn::ExprBox">ExprBox</a>)</code></div><div class="docblock"><p>A box expression: <code>box f</code>.</p>
</div><div id="variant.Break" class="variant small-section-header"><a href="#variant.Break" class="anchor field"></a><code>Break(<a class="struct" href="../syn/struct.ExprBreak.html" title="struct syn::ExprBreak">ExprBreak</a>)</code></div><div class="docblock"><p>A <code>break</code>, with an optional label to break and an optional
expression.</p>
</div><div id="variant.Call" class="variant small-section-header"><a href="#variant.Call" class="anchor field"></a><code>Call(<a class="struct" href="../syn/struct.ExprCall.html" title="struct syn::ExprCall">ExprCall</a>)</code></div><div class="docblock"><p>A function call expression: <code>invoke(a, b)</code>.</p>
</div><div id="variant.Cast" class="variant small-section-header"><a href="#variant.Cast" class="anchor field"></a><code>Cast(<a class="struct" href="../syn/struct.ExprCast.html" title="struct syn::ExprCast">ExprCast</a>)</code></div><div class="docblock"><p>A cast expression: <code>foo as f64</code>.</p>
</div><div id="variant.Closure" class="variant small-section-header"><a href="#variant.Closure" class="anchor field"></a><code>Closure(<a class="struct" href="../syn/struct.ExprClosure.html" title="struct syn::ExprClosure">ExprClosure</a>)</code></div><div class="docblock"><p>A closure expression: <code>|a, b| a + b</code>.</p>
</div><div id="variant.Continue" class="variant small-section-header"><a href="#variant.Continue" class="anchor field"></a><code>Continue(<a class="struct" href="../syn/struct.ExprContinue.html" title="struct syn::ExprContinue">ExprContinue</a>)</code></div><div class="docblock"><p>A <code>continue</code>, with an optional label.</p>
</div><div id="variant.Field" class="variant small-section-header"><a href="#variant.Field" class="anchor field"></a><code>Field(<a class="struct" href="../syn/struct.ExprField.html" title="struct syn::ExprField">ExprField</a>)</code></div><div class="docblock"><p>Access of a named struct field (<code>obj.k</code>) or unnamed tuple struct
field (<code>obj.0</code>).</p>
</div><div id="variant.ForLoop" class="variant small-section-header"><a href="#variant.ForLoop" class="anchor field"></a><code>ForLoop(<a class="struct" href="../syn/struct.ExprForLoop.html" title="struct syn::ExprForLoop">ExprForLoop</a>)</code></div><div class="docblock"><p>A for loop: <code>for pat in expr { ... }</code>.</p>
</div><div id="variant.Group" class="variant small-section-header"><a href="#variant.Group" class="anchor field"></a><code>Group(<a class="struct" href="../syn/struct.ExprGroup.html" title="struct syn::ExprGroup">ExprGroup</a>)</code></div><div class="docblock"><p>An expression contained within invisible delimiters.</p>
<p>This variant is important for faithfully representing the precedence
of expressions and is related to <code>None</code>-delimited spans in a
<code>TokenStream</code>.</p>
</div><div id="variant.If" class="variant small-section-header"><a href="#variant.If" class="anchor field"></a><code>If(<a class="struct" href="../syn/struct.ExprIf.html" title="struct syn::ExprIf">ExprIf</a>)</code></div><div class="docblock"><p>An <code>if</code> expression with an optional <code>else</code> block: <code>if expr { ... } else { ... }</code>.</p>
<p>The <code>else</code> branch expression may only be an <code>If</code> or <code>Block</code>
expression, not any of the other types of expression.</p>
</div><div id="variant.Index" class="variant small-section-header"><a href="#variant.Index" class="anchor field"></a><code>Index(<a class="struct" href="../syn/struct.ExprIndex.html" title="struct syn::ExprIndex">ExprIndex</a>)</code></div><div class="docblock"><p>A square bracketed indexing expression: <code>vector[2]</code>.</p>
</div><div id="variant.Let" class="variant small-section-header"><a href="#variant.Let" class="anchor field"></a><code>Let(<a class="struct" href="../syn/struct.ExprLet.html" title="struct syn::ExprLet">ExprLet</a>)</code></div><div class="docblock"><p>A <code>let</code> guard: <code>let Some(x) = opt</code>.</p>
</div><div id="variant.Lit" class="variant small-section-header"><a href="#variant.Lit" class="anchor field"></a><code>Lit(<a class="struct" href="../syn/struct.ExprLit.html" title="struct syn::ExprLit">ExprLit</a>)</code></div><div class="docblock"><p>A literal in place of an expression: <code>1</code>, <code>&quot;foo&quot;</code>.</p>
</div><div id="variant.Loop" class="variant small-section-header"><a href="#variant.Loop" class="anchor field"></a><code>Loop(<a class="struct" href="../syn/struct.ExprLoop.html" title="struct syn::ExprLoop">ExprLoop</a>)</code></div><div class="docblock"><p>Conditionless loop: <code>loop { ... }</code>.</p>
</div><div id="variant.Macro" class="variant small-section-header"><a href="#variant.Macro" class="anchor field"></a><code>Macro(<a class="struct" href="../syn/struct.ExprMacro.html" title="struct syn::ExprMacro">ExprMacro</a>)</code></div><div class="docblock"><p>A macro invocation expression: <code>format!(&quot;{}&quot;, q)</code>.</p>
</div><div id="variant.Match" class="variant small-section-header"><a href="#variant.Match" class="anchor field"></a><code>Match(<a class="struct" href="../syn/struct.ExprMatch.html" title="struct syn::ExprMatch">ExprMatch</a>)</code></div><div class="docblock"><p>A <code>match</code> expression: <code>match n { Some(n) =&gt; {}, None =&gt; {} }</code>.</p>
</div><div id="variant.MethodCall" class="variant small-section-header"><a href="#variant.MethodCall" class="anchor field"></a><code>MethodCall(<a class="struct" href="../syn/struct.ExprMethodCall.html" title="struct syn::ExprMethodCall">ExprMethodCall</a>)</code></div><div class="docblock"><p>A method call expression: <code>x.foo::&lt;T&gt;(a, b)</code>.</p>
</div><div id="variant.Paren" class="variant small-section-header"><a href="#variant.Paren" class="anchor field"></a><code>Paren(<a class="struct" href="../syn/struct.ExprParen.html" title="struct syn::ExprParen">ExprParen</a>)</code></div><div class="docblock"><p>A parenthesized expression: <code>(a + b)</code>.</p>
</div><div id="variant.Path" class="variant small-section-header"><a href="#variant.Path" class="anchor field"></a><code>Path(<a class="struct" href="../syn/struct.ExprPath.html" title="struct syn::ExprPath">ExprPath</a>)</code></div><div class="docblock"><p>A path like <code>std::mem::replace</code> possibly containing generic
parameters and a qualified self-type.</p>
<p>A plain identifier like <code>x</code> is a path of length 1.</p>
</div><div id="variant.Range" class="variant small-section-header"><a href="#variant.Range" class="anchor field"></a><code>Range(<a class="struct" href="../syn/struct.ExprRange.html" title="struct syn::ExprRange">ExprRange</a>)</code></div><div class="docblock"><p>A range expression: <code>1..2</code>, <code>1..</code>, <code>..2</code>, <code>1..=2</code>, <code>..=2</code>.</p>
</div><div id="variant.Reference" class="variant small-section-header"><a href="#variant.Reference" class="anchor field"></a><code>Reference(<a class="struct" href="../syn/struct.ExprReference.html" title="struct syn::ExprReference">ExprReference</a>)</code></div><div class="docblock"><p>A referencing operation: <code>&amp;a</code> or <code>&amp;mut a</code>.</p>
</div><div id="variant.Repeat" class="variant small-section-header"><a href="#variant.Repeat" class="anchor field"></a><code>Repeat(<a class="struct" href="../syn/struct.ExprRepeat.html" title="struct syn::ExprRepeat">ExprRepeat</a>)</code></div><div class="docblock"><p>An array literal constructed from one repeated element: <code>[0u8; N]</code>.</p>
</div><div id="variant.Return" class="variant small-section-header"><a href="#variant.Return" class="anchor field"></a><code>Return(<a class="struct" href="../syn/struct.ExprReturn.html" title="struct syn::ExprReturn">ExprReturn</a>)</code></div><div class="docblock"><p>A <code>return</code>, with an optional value to be returned.</p>
</div><div id="variant.Struct" class="variant small-section-header"><a href="#variant.Struct" class="anchor field"></a><code>Struct(<a class="struct" href="../syn/struct.ExprStruct.html" title="struct syn::ExprStruct">ExprStruct</a>)</code></div><div class="docblock"><p>A struct literal expression: <code>Point { x: 1, y: 1 }</code>.</p>
<p>The <code>rest</code> provides the value of the remaining fields as in <code>S { a: 1, b: 1, ..rest }</code>.</p>
</div><div id="variant.Try" class="variant small-section-header"><a href="#variant.Try" class="anchor field"></a><code>Try(<a class="struct" href="../syn/struct.ExprTry.html" title="struct syn::ExprTry">ExprTry</a>)</code></div><div class="docblock"><p>A try-expression: <code>expr?</code>.</p>
</div><div id="variant.TryBlock" class="variant small-section-header"><a href="#variant.TryBlock" class="anchor field"></a><code>TryBlock(<a class="struct" href="../syn/struct.ExprTryBlock.html" title="struct syn::ExprTryBlock">ExprTryBlock</a>)</code></div><div class="docblock"><p>A try block: <code>try { ... }</code>.</p>
</div><div id="variant.Tuple" class="variant small-section-header"><a href="#variant.Tuple" class="anchor field"></a><code>Tuple(<a class="struct" href="../syn/struct.ExprTuple.html" title="struct syn::ExprTuple">ExprTuple</a>)</code></div><div class="docblock"><p>A tuple expression: <code>(a, b, c, d)</code>.</p>
</div><div id="variant.Type" class="variant small-section-header"><a href="#variant.Type" class="anchor field"></a><code>Type(<a class="struct" href="../syn/struct.ExprType.html" title="struct syn::ExprType">ExprType</a>)</code></div><div class="docblock"><p>A type ascription expression: <code>foo: f64</code>.</p>
</div><div id="variant.Unary" class="variant small-section-header"><a href="#variant.Unary" class="anchor field"></a><code>Unary(<a class="struct" href="../syn/struct.ExprUnary.html" title="struct syn::ExprUnary">ExprUnary</a>)</code></div><div class="docblock"><p>A unary operation: <code>!x</code>, <code>*x</code>.</p>
</div><div id="variant.Unsafe" class="variant small-section-header"><a href="#variant.Unsafe" class="anchor field"></a><code>Unsafe(<a class="struct" href="../syn/struct.ExprUnsafe.html" title="struct syn::ExprUnsafe">ExprUnsafe</a>)</code></div><div class="docblock"><p>An unsafe block: <code>unsafe { ... }</code>.</p>
</div><div 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></div><div class="docblock"><p>Tokens in expression position not interpreted by Syn.</p>
</div><div id="variant.While" class="variant small-section-header"><a href="#variant.While" class="anchor field"></a><code>While(<a class="struct" href="../syn/struct.ExprWhile.html" title="struct syn::ExprWhile">ExprWhile</a>)</code></div><div class="docblock"><p>A while loop: <code>while expr { ... }</code>.</p>
</div><div id="variant.Yield" class="variant small-section-header"><a href="#variant.Yield" class="anchor field"></a><code>Yield(<a class="struct" href="../syn/struct.ExprYield.html" title="struct syn::ExprYield">ExprYield</a>)</code></div><div class="docblock"><p>A yield expression: <code>yield expr</code>.</p>
</div><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor"></a></h2><h3 id="impl" class="impl"><code class="in-band">impl <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#1114-1200" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.parse_without_eager_brace" class="method"><code>pub fn <a href="#method.parse_without_eager_brace" class="fnname">parse_without_eager_brace</a>(input: <a class="type" href="../syn/parse/type.ParseStream.html" title="type syn::parse::ParseStream">ParseStream</a>&lt;'_&gt;) -&gt; <a class="type" href="../syn/parse/type.Result.html" title="type syn::parse::Result">Result</a>&lt;<a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a>&gt;</code><a class="srclink" href="../src/syn/expr.rs.html#1197-1199" title="goto source code">[src]</a></h4><div class="docblock"><p>An alternative to the primary <code>Expr::parse</code> parser (from the
<a href="../syn/parse/trait.Parse.html" title="Parse"><code>Parse</code></a> trait) for ambiguous syntactic positions in which a
trailing brace should not be taken as part of the expression.</p>
<p>Rust grammar has an ambiguity where braces sometimes turn a path
expression into a struct initialization and sometimes do not. In the
following code, the expression <code>S {}</code> is one expression. Presumably
there is an empty struct <code>struct S {}</code> defined somewhere which it is
instantiating.</p>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">let</span> <span class="kw">_</span> <span class="op">=</span> <span class="kw-2">*</span><span class="ident">S</span> {};
<span class="comment">// parsed by rustc as: `*(S {})`</span></pre></div>
<p>We would want to parse the above using <code>Expr::parse</code> after the <code>=</code>
token.</p>
<p>But in the following, <code>S {}</code> is <em>not</em> a struct init expression.</p>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">if</span> <span class="kw-2">*</span><span class="ident">S</span> {} {}
<span class="comment">// parsed by rustc as:</span>
<span class="comment">//</span>
<span class="comment">// if (*S) {</span>
<span class="comment">// /* empty block */</span>
<span class="comment">// }</span>
<span class="comment">// {</span>
<span class="comment">// /* another empty block */</span>
<span class="comment">// }</span></pre></div>
<p>For that reason we would want to parse if-conditions using
<code>Expr::parse_without_eager_brace</code> after the <code>if</code> token. Same for
similar syntactic positions such as the condition expr after a
<code>while</code> token or the expr at the top of a <code>match</code>.</p>
<p>The Rust grammar's choices around which way this ambiguity is
resolved at various syntactic positions is fairly arbitrary. Really
either parse behavior could work in most positions, and language
designers just decide each case based on which is more likely to be
what the programmer had in mind most of the time.</p>
<div class="example-wrap"><pre class="rust rust-example-rendered">
<span class="kw">if</span> <span class="kw">return</span> <span class="ident">S</span> {} {}
<span class="comment">// parsed by rustc as:</span>
<span class="comment">//</span>
<span class="comment">// if (return (S {})) {</span>
<span class="comment">// }</span>
<span class="comment">//</span>
<span class="comment">// but could equally well have been this other arbitrary choice:</span>
<span class="comment">//</span>
<span class="comment">// if (return S) {</span>
<span class="comment">// }</span>
<span class="comment">// {}</span></pre></div>
<p>Note the grammar ambiguity on trailing braces is distinct from
precedence and is not captured by assigning a precedence level to
the braced struct init expr in relation to other operators. This can
be illustrated by <code>return 0..S {}</code> vs <code>match 0..S {}</code>. The former
parses as <code>return (0..(S {}))</code> implying tighter precedence for
struct init than <code>..</code>, while the latter parses as <code>match (0..S) {}</code>
implying tighter precedence for <code>..</code> than struct init, a
contradiction.</p>
</div></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor"></a></h2><div id="trait-implementations-list"><h3 id="impl-Clone" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-Clone" class="anchor"></a><a class="srclink" href="../src/syn/gen/clone.rs.html#203-279" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.clone" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone" class="fnname">clone</a>(&amp;self) -&gt; Self</code><a class="srclink" href="../src/syn/gen/clone.rs.html#204-278" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Returns a copy of the value. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone">Read more</a></p>
</div><h4 id="method.clone_from" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/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/nightly/std/primitive.reference.html">&amp;</a>Self)</code><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/clone.rs.html#128-130" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#method.clone_from">Read more</a></p>
</div></div><h3 id="impl-From%3CExprArray%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprArray.html" title="struct syn::ExprArray">ExprArray</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprArray%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprArray.html" title="struct syn::ExprArray">ExprArray</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprAssign%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprAssign.html" title="struct syn::ExprAssign">ExprAssign</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprAssign%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-1" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprAssign.html" title="struct syn::ExprAssign">ExprAssign</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprAssignOp%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprAssignOp.html" title="struct syn::ExprAssignOp">ExprAssignOp</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprAssignOp%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-2" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprAssignOp.html" title="struct syn::ExprAssignOp">ExprAssignOp</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprAsync%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprAsync.html" title="struct syn::ExprAsync">ExprAsync</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprAsync%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-3" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprAsync.html" title="struct syn::ExprAsync">ExprAsync</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprAwait%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprAwait.html" title="struct syn::ExprAwait">ExprAwait</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprAwait%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-4" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprAwait.html" title="struct syn::ExprAwait">ExprAwait</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprBinary%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprBinary.html" title="struct syn::ExprBinary">ExprBinary</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprBinary%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-5" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprBinary.html" title="struct syn::ExprBinary">ExprBinary</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprBlock%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprBlock.html" title="struct syn::ExprBlock">ExprBlock</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprBlock%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-6" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprBlock.html" title="struct syn::ExprBlock">ExprBlock</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprBox%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprBox.html" title="struct syn::ExprBox">ExprBox</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprBox%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-7" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprBox.html" title="struct syn::ExprBox">ExprBox</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprBreak%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprBreak.html" title="struct syn::ExprBreak">ExprBreak</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprBreak%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-8" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprBreak.html" title="struct syn::ExprBreak">ExprBreak</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprCall%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprCall.html" title="struct syn::ExprCall">ExprCall</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprCall%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-9" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprCall.html" title="struct syn::ExprCall">ExprCall</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprCast%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprCast.html" title="struct syn::ExprCast">ExprCast</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprCast%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-10" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprCast.html" title="struct syn::ExprCast">ExprCast</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprClosure%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprClosure.html" title="struct syn::ExprClosure">ExprClosure</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprClosure%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-11" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprClosure.html" title="struct syn::ExprClosure">ExprClosure</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprContinue%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprContinue.html" title="struct syn::ExprContinue">ExprContinue</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprContinue%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-12" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprContinue.html" title="struct syn::ExprContinue">ExprContinue</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprField%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprField.html" title="struct syn::ExprField">ExprField</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprField%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-13" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprField.html" title="struct syn::ExprField">ExprField</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprForLoop%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprForLoop.html" title="struct syn::ExprForLoop">ExprForLoop</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprForLoop%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-14" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprForLoop.html" title="struct syn::ExprForLoop">ExprForLoop</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprGroup%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprGroup.html" title="struct syn::ExprGroup">ExprGroup</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprGroup%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-15" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprGroup.html" title="struct syn::ExprGroup">ExprGroup</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprIf%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprIf.html" title="struct syn::ExprIf">ExprIf</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprIf%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-16" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprIf.html" title="struct syn::ExprIf">ExprIf</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprIndex%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprIndex.html" title="struct syn::ExprIndex">ExprIndex</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprIndex%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-17" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprIndex.html" title="struct syn::ExprIndex">ExprIndex</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprLet%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprLet.html" title="struct syn::ExprLet">ExprLet</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprLet%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-18" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprLet.html" title="struct syn::ExprLet">ExprLet</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprLit%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprLit.html" title="struct syn::ExprLit">ExprLit</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprLit%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-19" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprLit.html" title="struct syn::ExprLit">ExprLit</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprLoop%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprLoop.html" title="struct syn::ExprLoop">ExprLoop</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprLoop%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-20" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprLoop.html" title="struct syn::ExprLoop">ExprLoop</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprMacro%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprMacro.html" title="struct syn::ExprMacro">ExprMacro</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprMacro%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-21" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprMacro.html" title="struct syn::ExprMacro">ExprMacro</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprMatch%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprMatch.html" title="struct syn::ExprMatch">ExprMatch</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprMatch%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-22" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprMatch.html" title="struct syn::ExprMatch">ExprMatch</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprMethodCall%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprMethodCall.html" title="struct syn::ExprMethodCall">ExprMethodCall</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprMethodCall%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-23" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprMethodCall.html" title="struct syn::ExprMethodCall">ExprMethodCall</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprParen%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprParen.html" title="struct syn::ExprParen">ExprParen</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprParen%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-24" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprParen.html" title="struct syn::ExprParen">ExprParen</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprPath%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprPath.html" title="struct syn::ExprPath">ExprPath</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprPath%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-25" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprPath.html" title="struct syn::ExprPath">ExprPath</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprRange%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprRange.html" title="struct syn::ExprRange">ExprRange</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprRange%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-26" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprRange.html" title="struct syn::ExprRange">ExprRange</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprReference%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprReference.html" title="struct syn::ExprReference">ExprReference</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprReference%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-27" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprReference.html" title="struct syn::ExprReference">ExprReference</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprRepeat%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprRepeat.html" title="struct syn::ExprRepeat">ExprRepeat</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprRepeat%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-28" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprRepeat.html" title="struct syn::ExprRepeat">ExprRepeat</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprReturn%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprReturn.html" title="struct syn::ExprReturn">ExprReturn</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprReturn%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-29" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprReturn.html" title="struct syn::ExprReturn">ExprReturn</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprStruct%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprStruct.html" title="struct syn::ExprStruct">ExprStruct</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprStruct%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-30" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprStruct.html" title="struct syn::ExprStruct">ExprStruct</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprTry%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprTry.html" title="struct syn::ExprTry">ExprTry</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprTry%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-31" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprTry.html" title="struct syn::ExprTry">ExprTry</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprTryBlock%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprTryBlock.html" title="struct syn::ExprTryBlock">ExprTryBlock</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprTryBlock%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-32" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprTryBlock.html" title="struct syn::ExprTryBlock">ExprTryBlock</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprTuple%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprTuple.html" title="struct syn::ExprTuple">ExprTuple</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprTuple%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-33" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprTuple.html" title="struct syn::ExprTuple">ExprTuple</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprType%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprType.html" title="struct syn::ExprType">ExprType</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprType%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-34" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprType.html" title="struct syn::ExprType">ExprType</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprUnary%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprUnary.html" title="struct syn::ExprUnary">ExprUnary</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprUnary%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-35" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprUnary.html" title="struct syn::ExprUnary">ExprUnary</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprUnsafe%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprUnsafe.html" title="struct syn::ExprUnsafe">ExprUnsafe</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprUnsafe%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-36" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprUnsafe.html" title="struct syn::ExprUnsafe">ExprUnsafe</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprWhile%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprWhile.html" title="struct syn::ExprWhile">ExprWhile</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprWhile%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-37" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprWhile.html" title="struct syn::ExprWhile">ExprWhile</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-From%3CExprYield%3E" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="../syn/struct.ExprYield.html" title="struct syn::ExprYield">ExprYield</a>&gt; for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-From%3CExprYield%3E" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-38" class="method hidden"><code>fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(e: <a class="struct" href="../syn/struct.ExprYield.html" title="struct syn::ExprYield">ExprYield</a>) -&gt; <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-Parse" class="impl"><code class="in-band">impl <a class="trait" href="../syn/parse/trait.Parse.html" title="trait syn::parse::Parse">Parse</a> for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-Parse" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#1108-1112" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.parse" class="method hidden"><code>fn <a href="../syn/parse/trait.Parse.html#tymethod.parse" class="fnname">parse</a>(input: <a class="type" href="../syn/parse/type.ParseStream.html" title="type syn::parse::ParseStream">ParseStream</a>&lt;'_&gt;) -&gt; <a class="type" href="../syn/parse/type.Result.html" title="type syn::parse::Result">Result</a>&lt;Self&gt;</code><a class="srclink" href="../src/syn/expr.rs.html#1109-1111" title="goto source code">[src]</a></h4></div><h3 id="impl-ToTokens" class="impl"><code class="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="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-ToTokens" class="anchor"></a><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.to_tokens" class="method hidden"><code>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>)</code><a class="srclink" href="../src/syn/expr.rs.html#14-230" title="goto source code">[src]</a></h4><div class='docblock hidden'><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><h4 id="method.to_token_stream" class="method hidden"><code>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></code><a class="srclink" href="../src/quote/to_tokens.rs.html#61-65" title="goto source code">[src]</a></h4><div class='docblock hidden'><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><h4 id="method.into_token_stream" class="method hidden"><code>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></code><a class="srclink" href="../src/quote/to_tokens.rs.html#71-76" title="goto source code">[src]</a></h4><div class='docblock hidden'><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></div></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor"></a></h2><div id="synthetic-implementations-list"><h3 id="impl-RefUnwindSafe" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.RefUnwindSafe.html" title="trait std::panic::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-RefUnwindSafe" class="anchor"></a></h3><div class="impl-items"></div><h3 id="impl-Send" class="impl"><code class="in-band">impl !<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-Send" class="anchor"></a></h3><div class="impl-items"></div><h3 id="impl-Sync" class="impl"><code class="in-band">impl !<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-Sync" class="anchor"></a></h3><div class="impl-items"></div><h3 id="impl-Unpin" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-Unpin" class="anchor"></a></h3><div class="impl-items"></div><h3 id="impl-UnwindSafe" class="impl"><code class="in-band">impl <a class="trait" href="https://doc.rust-lang.org/nightly/std/panic/trait.UnwindSafe.html" title="trait std::panic::UnwindSafe">UnwindSafe</a> for <a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a></code><a href="#impl-UnwindSafe" class="anchor"></a></h3><div class="impl-items"></div></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor"></a></h2><div id="blanket-implementations-list"><h3 id="impl-Any" class="impl"><code class="in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></code><a href="#impl-Any" class="anchor"></a><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#108-112" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.type_id" class="method hidden"><code>pub fn <a href="https://doc.rust-lang.org/nightly/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/nightly/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#109-111" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id">Read more</a></p>
</div></div><h3 id="impl-Borrow%3CT%3E" class="impl"><code class="in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/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/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></code><a href="#impl-Borrow%3CT%3E" class="anchor"></a><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#210-214" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.borrow" class="method hidden"><code>pub fn <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow" class="fnname">borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>T</code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#211-213" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></p>
</div></div><h3 id="impl-BorrowMut%3CT%3E" class="impl"><code class="in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/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/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></code><a href="#impl-BorrowMut%3CT%3E" class="anchor"></a><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#217-221" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.borrow_mut" class="method hidden"><code>pub fn <a href="https://doc.rust-lang.org/nightly/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/nightly/std/primitive.reference.html">&amp;mut </a>T</code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#218-220" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></p>
</div></div><h3 id="impl-From%3CT%3E" class="impl"><code class="in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for T</code><a href="#impl-From%3CT%3E" class="anchor"></a><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#552-556" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.from-39" class="method hidden"><code>pub fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(t: T) -&gt; T</code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#553-555" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-Into%3CU%3E" class="impl"><code class="in-band">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/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/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt;,&nbsp;</span></code><a href="#impl-Into%3CU%3E" class="anchor"></a><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#541-548" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.into" class="method hidden"><code>pub fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html#tymethod.into" class="fnname">into</a>(self) -&gt; U</code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#545-547" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-Spanned" class="impl"><code class="in-band">impl&lt;T&gt; <a class="trait" href="../syn/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/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></code><a href="#impl-Spanned" class="anchor"></a><a class="srclink" href="../src/syn/spanned.rs.html#110-114" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="method.span" class="method hidden"><code>pub fn <a href="../syn/spanned/trait.Spanned.html#tymethod.span" class="fnname">span</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&amp;</a>Self) -&gt; <a class="struct" href="../proc_macro2/struct.Span.html" title="struct proc_macro2::Span">Span</a></code><a class="srclink" href="../src/syn/spanned.rs.html#111" title="goto source code">[src]</a></h4><div class='docblock hidden'><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="../syn/spanned/trait.Spanned.html#tymethod.span">Read more</a></p>
</div></div><h3 id="impl-ToOwned" class="impl"><code class="in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,&nbsp;</span></code><a href="#impl-ToOwned" class="anchor"></a><a class="srclink" href="https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#80-92" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="associatedtype.Owned" class="type"><code>type <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#associatedtype.Owned" class="type">Owned</a> = T</code></h4><div class='docblock'><p>The resulting type after obtaining ownership.</p>
</div><h4 id="method.to_owned" class="method hidden"><code>pub fn <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#tymethod.to_owned" class="fnname">to_owned</a>(&amp;self) -&gt; T</code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#85-87" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></p>
</div><h4 id="method.clone_into" class="method hidden"><code>pub fn <a href="https://doc.rust-lang.org/nightly/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/nightly/std/primitive.reference.html">&amp;mut </a>T)</code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#89-91" title="goto source code">[src]</a></h4><div class="stability hidden"><div class="stab unstable"><details><summary><span class="emoji">🔬</span> This is a nightly-only experimental API. (<code>toowned_clone_into</code>)</summary><p>recently added</p>
</details></div></div><div class='docblock hidden'><p>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></p>
</div></div><h3 id="impl-TryFrom%3CU%3E" class="impl"><code class="in-band">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/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/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;T&gt;,&nbsp;</span></code><a href="#impl-TryFrom%3CU%3E" class="anchor"></a><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#589-598" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="associatedtype.Error" class="type"><code>type <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" class="type">Error</a> = <a class="enum" href="https://doc.rust-lang.org/nightly/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></code></h4><div class='docblock'><p>The type returned in the event of a conversion error.</p>
</div><h4 id="method.try_from" class="method hidden"><code>pub fn <a href="https://doc.rust-lang.org/nightly/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/nightly/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/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt;&gt;::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#595-597" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div><h3 id="impl-TryInto%3CU%3E" class="impl"><code class="in-band">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/nightly/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/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;,&nbsp;</span></code><a href="#impl-TryInto%3CU%3E" class="anchor"></a><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#575-584" title="goto source code">[src]</a></h3><div class="impl-items"><h4 id="associatedtype.Error-1" class="type"><code>type <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#associatedtype.Error" class="type">Error</a> = &lt;U as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></code></h4><div class='docblock'><p>The type returned in the event of a conversion error.</p>
</div><h4 id="method.try_into" class="method hidden"><code>pub fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#tymethod.try_into" class="fnname">try_into</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/nightly/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/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#581-583" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Performs the conversion.</p>
</div></div></div></section><section id="search" class="content hidden"></section><section class="footer"></section><script>window.rootPath = "../";window.currentCrate = "syn";</script><script src="../main.js"></script><script defer src="../search-index.js"></script></body></html>