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 TokenStream)
[src]
fn to_tokens(&self, tokens: &mut TokenStream)
Write self
to the given TokenStream
. Read more
fn into_token_stream(self) -> TokenStream
[src]
fn into_token_stream(self) -> TokenStream
Convert self
directly into a TokenStream
object. Read more
impl Debug for ExprIfLet
[src]
impl Debug for ExprIfLet
fn fmt(&self, f: &mut Formatter) -> Result
[src]
fn fmt(&self, f: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl Eq for ExprIfLet
[src]
impl Eq for ExprIfLet
impl PartialEq for ExprIfLet
[src]
impl PartialEq for ExprIfLet
fn eq(&self, other: &ExprIfLet) -> bool
[src]
fn eq(&self, other: &ExprIfLet) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, other: &ExprIfLet) -> bool
[src]
fn ne(&self, other: &ExprIfLet) -> bool
This method tests for !=
.
impl Hash for ExprIfLet
[src]
impl Hash for ExprIfLet
fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
fn hash<__H: Hasher>(&self, state: &mut __H)
Feeds this value into the given [Hasher
]. Read more
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
Feeds a slice of this type into the given [Hasher
]. 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)
Performs copy-assignment from source
. Read more
impl From<ExprIfLet> for Expr
[src]
impl From<ExprIfLet> for Expr