Struct syn::ExprIfLet [−][src]
pub struct ExprIfLet { pub attrs: Vec<Attribute>, pub if_token: If, pub let_token: Let, pub pats: Punctuated<Pat, Or>, pub eq_token: Eq, pub expr: Box<Expr>, pub then_branch: Block, pub else_branch: Option<(Else, Box<Expr>)>, }
An if let
expression with an optional else
block: if let pat = expr { ... } else { ... }
.
The else
branch expression may only be an If
, IfLet
, or
Block
expression, not any of the other types of expression.
This type is available if Syn is built with the "full"
feature.
Fields
attrs: Vec<Attribute>
if_token: If
let_token: Let
pats: Punctuated<Pat, Or>
eq_token: Eq
expr: Box<Expr>
then_branch: Block
else_branch: Option<(Else, Box<Expr>)>
Trait Implementations
impl Synom for ExprIfLet
[src]
impl Synom for ExprIfLet
fn parse(i: Cursor) -> PResult<Self>
[src]
fn parse(i: Cursor) -> PResult<Self>
fn description() -> Option<&'static str>
[src]
fn description() -> Option<&'static str>
A short name of the type being parsed. Read more
impl ToTokens for ExprIfLet
[src]
impl ToTokens for ExprIfLet
fn to_tokens(&self, tokens: &mut Tokens)
[src]
fn to_tokens(&self, tokens: &mut Tokens)
Write self
to the given Tokens
. Read more
fn into_tokens(self) -> Tokens
[src]
fn into_tokens(self) -> Tokens
Convert self
directly into a Tokens
object. Read more
impl Clone for ExprIfLet
[src]
impl Clone for ExprIfLet
fn clone(&self) -> ExprIfLet
[src]
fn clone(&self) -> ExprIfLet
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0
[src]Performs copy-assignment from source
. Read more
impl From<ExprIfLet> for Expr
[src]
impl From<ExprIfLet> for Expr