pub enum Expr_ {
ExprBox(Option<P<Expr>>, P<Expr>),
ExprVec(Vec<P<Expr>>),
ExprCall(P<Expr>, Vec<P<Expr>>),
ExprMethodCall(SpannedIdent, Vec<P<Ty>>, Vec<P<Expr>>),
ExprTup(Vec<P<Expr>>),
ExprBinary(BinOp, P<Expr>, P<Expr>),
ExprUnary(UnOp, P<Expr>),
ExprLit(P<Lit>),
ExprCast(P<Expr>, P<Ty>),
ExprIf(P<Expr>, P<Block>, Option<P<Expr>>),
ExprIfLet(P<Pat>, P<Expr>, P<Block>, Option<P<Expr>>),
ExprWhile(P<Expr>, P<Block>, Option<Ident>),
ExprWhileLet(P<Pat>, P<Expr>, P<Block>, Option<Ident>),
ExprForLoop(P<Pat>, P<Expr>, P<Block>, Option<Ident>),
ExprLoop(P<Block>, Option<Ident>),
ExprMatch(P<Expr>, Vec<Arm>, MatchSource),
ExprClosure(CaptureClause, P<FnDecl>, P<Block>),
ExprBlock(P<Block>),
ExprAssign(P<Expr>, P<Expr>),
ExprAssignOp(BinOp, P<Expr>, P<Expr>),
ExprField(P<Expr>, SpannedIdent),
ExprTupField(P<Expr>, Spanned<usize>),
ExprIndex(P<Expr>, P<Expr>),
ExprRange(Option<P<Expr>>, Option<P<Expr>>),
ExprPath(Path),
ExprQPath(P<QPath>),
ExprAddrOf(Mutability, P<Expr>),
ExprBreak(Option<Ident>),
ExprAgain(Option<Ident>),
ExprRet(Option<P<Expr>>),
ExprInlineAsm(InlineAsm),
ExprMac(Mac),
ExprStruct(Path, Vec<Field>, Option<P<Expr>>),
ExprRepeat(P<Expr>, P<Expr>),
ExprParen(P<Expr>),
}
Variants
ExprBox | First expr is the place; second expr is the value.
|
ExprVec | |
ExprCall | |
ExprMethodCall | |
ExprTup | |
ExprBinary | |
ExprUnary | |
ExprLit | |
ExprCast | |
ExprIf | |
ExprIfLet | |
ExprWhile | |
ExprWhileLet | |
ExprForLoop | |
ExprLoop | |
ExprMatch | |
ExprClosure | |
ExprBlock | |
ExprAssign | |
ExprAssignOp | |
ExprField | |
ExprTupField | |
ExprIndex | |
ExprRange | |
ExprPath | Variable reference, possibly containing :: and/or
type parameters, e.g. foo::bar::
|
ExprQPath | A "qualified path", e.g. <Vec<T> as SomeTrait>::SomeType
|
ExprAddrOf | |
ExprBreak | |
ExprAgain | |
ExprRet | |
ExprInlineAsm | |
ExprMac | |
ExprStruct | A struct literal expression.
|
ExprRepeat | A vector literal constructed from one repeated element.
|
ExprParen | No-op: used solely so we can pretty-print faithfully
|
Trait Implementations
Derived Implementations