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 full only.
impl Parse for ExprIf
Available on crate feature
full only.fn parse(input: ParseStream<'_>) -> Result<Self>
Source§impl ToTokens for ExprIf
Available on crate feature full only.
impl ToTokens for ExprIf
Available on crate feature
full 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
full only.Auto Trait Implementations§
impl Freeze for ExprIf
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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
Returns a
Span covering the complete contents of this syntax tree
node, or Span::call_site() if this node is empty.