Enum syntex_syntax::ast::Pat_
[−]
[src]
pub enum Pat_ { PatWild, PatIdent(BindingMode, SpannedIdent, Option<P<Pat>>), PatEnum(Path, Option<Vec<P<Pat>>>), PatQPath(QSelf, Path), PatStruct(Path, Vec<Spanned<FieldPat>>, bool), PatTup(Vec<P<Pat>>), PatBox(P<Pat>), PatRegion(P<Pat>, Mutability), PatLit(P<Expr>), PatRange(P<Expr>, P<Expr>), PatVec(Vec<P<Pat>>, Option<P<Pat>>, Vec<P<Pat>>), PatMac(Mac), }
Variants
PatWild | Represents a wildcard pattern ( |
PatIdent | A PatIdent may either be a new bound variable, or a nullary enum (in which case the third field is None). In the nullary enum case, the parser can't determine which it is. The resolver determines this, and records this pattern's NodeId in an auxiliary set (of "PatIdents that refer to nullary enums") |
PatEnum | "None" means a |
PatQPath | An associated const named using the qualified path |
PatStruct | Destructuring of a struct, e.g. |
PatTup | A tuple pattern |
PatBox | A |
PatRegion | A reference pattern, e.g. |
PatLit | A literal |
PatRange | A range pattern, e.g. |
PatVec |
|
PatMac | A macro pattern; pre-expansion |