260 lines
96 KiB
HTML
260 lines
96 KiB
HTML
|
<!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">☰</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<ExprArray></a><a href="#impl-From%3CExprAssign%3E">From<ExprAssign></a><a href="#impl-From%3CExprAssignOp%3E">From<ExprAssignOp></a><a href="#impl-From%3CExprAsync%3E">From<ExprAsync></a><a href="#impl-From%3CExprAwait%3E">From<ExprAwait></a><a href="#impl-From%3CExprBinary%3E">From<ExprBinary></a><a href="#impl-From%3CExprBlock%3E">From<ExprBlock></a><a href="#impl-From%3CExprBox%3E">From<ExprBox></a><a href="#impl-From%3CExprBreak%3E">From<ExprBreak></a><a href="#impl-From%3CExprCall%3E">From<ExprCall></a><a href="#impl-From%3CExprCast%3E">From<ExprCast></a><a href="#impl-From%3CExprClosure%3E">From<ExprClosure></a><a href="#impl-From%3CExprContinue%3E">From<ExprContinue></a><a href="#impl-From%3CExprField%3E">From<ExprField></a><a href="#impl-From%3CExprForLoop%3E">From<ExprForLoop></a><a href="#impl-From%3CExprGroup%3E">From<ExprGroup></a><a href="#impl-From%3CExprIf%3E">From<ExprIf></a><a href="#impl-From%3CExprIndex%3E">From<ExprIndex></a><a href="#impl-From%3CExprLet%3E">From<ExprLet></a><a href="#impl-From%3CExprLit%3E">From<ExprLit></a><a href="#impl-From%3CExprLoop%3E">From<ExprLoop></a><a href="#impl-From%3CExprMacro%3E">From<ExprMacro></a><a href="#impl-From%3CExprMatch%3E">From<ExprMatch></a><a href="#impl-From%3CExprMethodCall%3E">From<ExprMethodCall></a><a href="#impl-From%3CExprParen%3E">From<ExprParen></a><a href="#impl-From%3CExprPath%3E">From<ExprPath></a><a href="#impl-From%3CExprRange%3E">From<ExprRange></a><a href="#impl-From%3CExprReference%3E">From<ExprReference></a><a hr
|
||
|
<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">−</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>"derive"</code> or <code>"full"</code>
|
||
|
feature, but most of the variants are not available unless "full" 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">></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">></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">></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">></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>"foo"</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!("{}", 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) => {}, None => {} }</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::<T>(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>&a</code> or <code>&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><'_>) -> <a class="type" href="../syn/parse/type.Result.html" title="type syn::parse::Result">Result</a><<a class="enum" href="../syn/enum.Expr.html" title="enum syn::Expr">Expr</a>></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>(&self) -> 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>(&mut self, source: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&</a>Self)</code><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/clone.rs.html#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><<a class="struct" href="../syn/struct.ExprArray.html" title="struct syn::ExprArray">ExprArray</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprAssign.html" title="struct syn::ExprAssign">ExprAssign</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprAssignOp.html" title="struct syn::ExprAssignOp">ExprAssignOp</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprAsync.html" title="struct syn::ExprAsync">ExprAsync</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprAwait.html" title="struct syn::ExprAwait">ExprAwait</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprBinary.html" title="struct syn::ExprBinary">ExprBinary</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprBlock.html" title="struct syn::ExprBlock">ExprBlock</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprBox.html" title="struct syn::ExprBox">ExprBox</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprBreak.html" title="struct syn::ExprBreak">ExprBreak</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprCall.html" title="struct syn::ExprCall">ExprCall</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprCast.html" title="struct syn::ExprCast">ExprCast</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprClosure.html" title="struct syn::ExprClosure">ExprClosure</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprContinue.html" title="struct syn::ExprContinue">ExprContinue</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprField.html" title="struct syn::ExprField">ExprField</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprForLoop.html" title="struct syn::ExprForLoop">ExprForLoop</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprGroup.html" title="struct syn::ExprGroup">ExprGroup</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprIf.html" title="struct syn::ExprIf">ExprIf</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprIndex.html" title="struct syn::ExprIndex">ExprIndex</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprLet.html" title="struct syn::ExprLet">ExprLet</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprLit.html" title="struct syn::ExprLit">ExprLit</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprLoop.html" title="struct syn::ExprLoop">ExprLoop</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprMacro.html" title="struct syn::ExprMacro">ExprMacro</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprMatch.html" title="struct syn::ExprMatch">ExprMatch</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprMethodCall.html" title="struct syn::ExprMethodCall">ExprMethodCall</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprParen.html" title="struct syn::ExprParen">ExprParen</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprPath.html" title="struct syn::ExprPath">ExprPath</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprRange.html" title="struct syn::ExprRange">ExprRange</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprReference.html" title="struct syn::ExprReference">ExprReference</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprRepeat.html" title="struct syn::ExprRepeat">ExprRepeat</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprReturn.html" title="struct syn::ExprReturn">ExprReturn</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprStruct.html" title="struct syn::ExprStruct">ExprStruct</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprTry.html" title="struct syn::ExprTry">ExprTry</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprTryBlock.html" title="struct syn::ExprTryBlock">ExprTryBlock</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprTuple.html" title="struct syn::ExprTuple">ExprTuple</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprType.html" title="struct syn::ExprType">ExprType</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprUnary.html" title="struct syn::ExprUnary">ExprUnary</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprUnsafe.html" title="struct syn::ExprUnsafe">ExprUnsafe</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprWhile.html" title="struct syn::ExprWhile">ExprWhile</a>> 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>) -> <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><<a class="struct" href="../syn/struct.ExprYield.html" title="struct syn::ExprYield">ExprYield</a>> 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>) -> <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><'_>) -> <a class="type" href="../syn/parse/type.Result.html" title="type syn::parse::Result">Result</a><Self></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>(&self, tokens: &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>(&self) -> <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) -> <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<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T <span class="where fmt-newline">where<br> T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>, </span></code><a href="#impl-Any" class="anchor"></a><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#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>(&self) -> <a class="struct" href="https://doc.rust-lang.org/nightly/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#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<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T <span class="where fmt-newline">where<br> T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>, </span></code><a href="#impl-Borrow%3CT%3E" class="anchor"></a><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#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>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&</a>T</code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#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<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T <span class="where fmt-newline">where<br> T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>, </span></code><a href="#impl-BorrowMut%3CT%3E" class="anchor"></a><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#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>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut </a>T</code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#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<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</code><a href="#impl-From%3CT%3E" class="anchor"></a><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/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) -> 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<T, U> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U> for T <span class="where fmt-newline">where<br> U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a><T>, </span></code><a href="#impl-Into%3CU%3E" class="anchor"></a><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/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) -> 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<T> <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> T: Spanned + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>, </span></code><a href="#impl-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">&</a>Self) -> <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<T> <a class="trait" href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T <span class="where fmt-newline">where<br> T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>, </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>(&self) -> T</code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#85-87" title="goto source code">[src]</a></h4><div class='docblock hidden'><p>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></p>
|
||
|
</div><h4 id="method.clone_into" class="method hidden"><code>pub fn <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#method.clone_into" class="fnname">clone_into</a>(&self, target: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut </a>T)</code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#89-91" title="goto source code">[src]</a></h4><div class="stability hidden"><div class="stab unstable"><details><summary><span class="emoji">🔬</span> This is a nightly-only experimental API. (<code>toowned_clone_into</code>)</summary><p>recently added</p>
|
||
|
</details></div></div><div class='docblock hidden'><p>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></p>
|
||
|
</div></div><h3 id="impl-TryFrom%3CU%3E" class="impl"><code class="in-band">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U> for T <span class="where fmt-newline">where<br> U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>, </span></code><a href="#impl-TryFrom%3CU%3E" class="anchor"></a><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/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) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, <T as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U>>::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/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<T, U> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a><U> for T <span class="where fmt-newline">where<br> U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>, </span></code><a href="#impl-TryInto%3CU%3E" class="anchor"></a><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/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> = <U as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></code></h4><div class='docblock'><p>The type returned in the event of a conversion error.</p>
|
||
|
</div><h4 id="method.try_into" class="method hidden"><code>pub fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#tymethod.try_into" class="fnname">try_into</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><U, <U as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="type" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></code><a class="srclink" href="https://doc.rust-lang.org/nightly/src/core/convert/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>
|