[][src]Struct syn::ExprIfLet

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: Iflet_token: Letpats: Punctuated<Pat, Or>eq_token: Eqexpr: Box<Expr>then_branch: Blockelse_branch: Option<(Else, Box<Expr>)>

Trait Implementations

impl Clone for ExprIfLet[src]

impl From<ExprIfLet> for Expr[src]

impl Synom for ExprIfLet[src]

impl ToTokens for ExprIfLet[src]

Auto Trait Implementations

impl !RefUnwindSafe for ExprIfLet

impl !Send for ExprIfLet

impl !Sync for ExprIfLet

impl Unpin for ExprIfLet

impl UnwindSafe for ExprIfLet

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Spanned for T where
    T: ToTokens
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.