pub struct ExprIf {
pub attrs: Vec<Attribute>,
pub if_token: If,
pub cond: Box<Expr>,
pub then_branch: Block,
pub else_branch: Option<(Else, Box<Expr>)>,
}Expand description
An if expression with an optional else block: if expr { ... } else { ... }.
The else branch expression may only be an If or Block
expression, not any of the other types of expression.
Fields§
§attrs: Vec<Attribute>§if_token: If§cond: Box<Expr>§then_branch: Block§else_branch: Option<(Else, Box<Expr>)>Trait Implementations§
source§impl Parse for ExprIf
Available on crate feature parsing only.
impl Parse for ExprIf
Available on crate feature
parsing only.fn parse(input: ParseStream<'_>) -> Result<Self>
source§impl PartialEq for ExprIf
Available on crate feature extra-traits only.
impl PartialEq for ExprIf
Available on crate feature
extra-traits only.source§impl ToTokens for ExprIf
Available on crate feature printing only.
impl ToTokens for ExprIf
Available on crate feature
printing only.source§fn to_tokens(&self, tokens: &mut TokenStream)
fn to_tokens(&self, tokens: &mut TokenStream)
source§fn to_token_stream(&self) -> TokenStream
fn to_token_stream(&self) -> TokenStream
source§fn into_token_stream(self) -> TokenStreamwhere
Self: Sized,
fn into_token_stream(self) -> TokenStreamwhere
Self: Sized,
impl Eq for ExprIf
Available on crate feature
extra-traits only.Auto Trait Implementations§
impl RefUnwindSafe for ExprIf
impl !Send for ExprIf
impl !Sync for ExprIf
impl Unpin for ExprIf
impl UnwindSafe for ExprIf
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> Spanned for Twhere
T: Spanned + ?Sized,
impl<T> Spanned for Twhere
T: Spanned + ?Sized,
source§fn span(&self) -> Span
fn span(&self) -> Span
Available on crate features
parsing and printing only.Returns a
Span covering the complete contents of this syntax tree
node, or Span::call_site() if this node is empty.