Enum syntex_syntax::ast::Expr_
[−]
[src]
pub enum Expr_ {
ExprBox(P<Expr>),
ExprInPlace(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>),
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(Option<QSelf>, Path),
ExprAddrOf(Mutability, P<Expr>),
ExprBreak(Option<SpannedIdent>),
ExprAgain(Option<SpannedIdent>),
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 | A | |
ExprInPlace | First expr is the place; second expr is the value. | |
ExprVec | An array ( | |
ExprCall | A function call The first field resolves to the function itself, and the second field is the list of arguments | |
ExprMethodCall | A method call ( The The first element of the vector of Thus, | |
ExprTup | A tuple ( | |
ExprBinary | A binary operation (For example: | |
ExprUnary | A unary operation (For example: | |
ExprLit | A literal (For example: | |
ExprCast | A cast ( | |
ExprIf | An
| |
ExprIfLet | An
This is desugared to a | |
ExprWhile | A while loop, with an optional label
| |
ExprWhileLet | A while-let loop, with an optional label
This is desugared to a combination of | |
ExprForLoop | A for loop, with an optional label
This is desugared to a combination of | |
ExprLoop | Conditionless loop (can be exited with break, continue, or return)
| |
ExprMatch | A | |
ExprClosure | A closure (for example, | |
ExprBlock | A block ( | |
ExprAssign | An assignment ( | |
ExprAssignOp | An assignment with an operator For example, | |
ExprField | Access of a named struct field ( | |
ExprTupField | Access of an unnamed field of a struct or tuple-struct For example, | |
ExprIndex | An indexing operation ( | |
ExprRange | A range ( | |
ExprPath | Variable reference, possibly containing Optionally "qualified",
e.g. | |
ExprAddrOf | A referencing operation ( | |
ExprBreak | A | |
ExprAgain | A | |
ExprRet | A | |
ExprInlineAsm | Output of the | |
ExprMac | A macro invocation; pre-expansion | |
ExprStruct | A struct literal expression. For example, | |
ExprRepeat | An array literal constructed from one repeated element. For example, | |
ExprParen | No-op: used solely so we can pretty-print faithfully |
Trait Implementations
Derived Implementations
impl Debug for Expr_[src]
impl Hash for Expr_[src]
fn hash<__H: Hasher>(&self, __arg_0: &mut __H)
Feeds this value into the state given, updating the hasher as necessary.
fn hash_slice<H>(data: &[Self], state: &mut H) where H: Hasher1.3.0
Feeds a slice of this type into the state provided.
impl Decodable for Expr_[src]
impl Encodable for Expr_[src]
impl Eq for Expr_[src]
impl PartialEq for Expr_[src]
fn eq(&self, __arg_0: &Expr_) -> bool
This method tests for self and other values to be equal, and is used by ==. Read more
fn ne(&self, __arg_0: &Expr_) -> bool
This method tests for !=.
impl Clone for Expr_[src]
fn clone(&self) -> Expr_
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0
Performs copy-assignment from source. Read more