Module syntex_syntax::ast 
                   
                       [−]
                   
               [src]
Reexports
| pub use self::BinOp_::*; | 
| pub use self::BlockCheckMode::*; | 
| pub use self::CaptureClause::*; | 
| pub use self::Decl_::*; | 
| pub use self::ExplicitSelf_::*; | 
| pub use self::Expr_::*; | 
| pub use self::FloatTy::*; | 
| pub use self::FunctionRetTy::*; | 
| pub use self::ForeignItem_::*; | 
| pub use self::IntTy::*; | 
| pub use self::Item_::*; | 
| pub use self::KleeneOp::*; | 
| pub use self::Lit_::*; | 
| pub use self::LitIntType::*; | 
| pub use self::MacStmtStyle::*; | 
| pub use self::MetaItem_::*; | 
| pub use self::Mutability::*; | 
| pub use self::Pat_::*; | 
| pub use self::PathListItem_::*; | 
| pub use self::PrimTy::*; | 
| pub use self::Sign::*; | 
| pub use self::Stmt_::*; | 
| pub use self::StrStyle::*; | 
| pub use self::StructFieldKind::*; | 
| pub use self::TraitItem_::*; | 
| pub use self::Ty_::*; | 
| pub use self::TyParamBound::*; | 
| pub use self::UintTy::*; | 
| pub use self::UnOp::*; | 
| pub use self::UnsafeSource::*; | 
| pub use self::ViewPath_::*; | 
| pub use self::Visibility::*; | 
| pub use self::PathParameters::*; | 
Structs
| AngleBracketedParameterData | A path like  | 
| Arg | represents an argument in a function header | 
| Arm | represents one arm of a 'match' | 
| AttrId | |
| Attribute_ | Doc-comments are promoted to attributes that have is_sugared_doc = true | 
| BareFnTy | |
| Block | |
| Crate | |
| Delimited | A delimited sequence of token trees | 
| EnumDef | |
| Expr | An expression | 
| Field | |
| FieldPat | A single field in a struct pattern | 
| FnDecl | Represents the header (not the body) of a function declaration | 
| ForeignItem | |
| ForeignMod | |
| Generics | Represents lifetimes and type parameters attached to a declaration of a function, enum, trait, etc. | 
| Ident | An identifier contains a Name (index into the interner table) and a SyntaxContext to track renaming and macro expansion per Flatt et al., "Macros That Work Together" | 
| ImplItem | |
| InlineAsm | |
| InlineAsmOutput | |
| Item | An item | 
| Lifetime | |
| LifetimeDef | A lifetime definition, eg  | 
| Local | Local represents a  | 
| Mac_ | Represents a macro invocation. The Path indicates which macro is being invoked, and the vector of token-trees contains the source of the macro invocation. | 
| MacroDef | A macro definition, in this crate or imported from another. | 
| MethodSig | Represents a method's signature in a trait declaration, or in an implementation. | 
| Mod | |
| MutTy | |
| Name | A name is a part of an identifier, representing a string or gensym. It's the result of interning. | 
| ParenthesizedParameterData | A path like  | 
| Pat | |
| Path | A "Path" is essentially Rust's notion of a name; for instance: std::cmp::PartialEq . It's represented as a sequence of identifiers, along with a bunch of supporting information. | 
| PathSegment | A segment of a path: an identifier, an optional lifetime, and a set of types. | 
| PolyTraitRef | |
| QSelf | The explicit Self type in a "qualified path". The actual
path, including the trait and the associated item, is stored
separately.  | 
| SequenceRepetition | A sequence of token treesee | 
| StructField_ | |
| SyntaxContext | A SyntaxContext represents a chain of macro-expandings and renamings. Each macro expansion corresponds to a fresh u32. This u32 is a reference to a table stored | 
| TraitItem | Represents a method declaration in a trait declaration, possibly including a default implementation A trait method is either required (meaning it doesn't have an implementation, just a signature) or provided (meaning it has a default implementation). | 
| TraitRef | TraitRef's appear in impls. | 
| Ty | |
| TyParam | |
| TypeBinding | |
| Variant_ | |
| WhereBoundPredicate | A type bound, eg  | 
| WhereClause | A  | 
| WhereEqPredicate | An equality predicate (unsupported), e.g.  | 
| WhereRegionPredicate | A lifetime predicate, e.g.  | 
Enums
| AsmDialect | |
| AttrStyle | Distinguishes between Attributes that decorate items and Attributes that are contained as statements within items. These two cases need to be distinguished for pretty-printing. | 
| BinOp_ | |
| BindingMode | |
| BlockCheckMode | |
| CaptureClause | |
| Constness | |
| Decl_ | |
| ExplicitSelf_ | Represents the kind of 'self' associated with a method | 
| Expr_ | |
| FloatTy | |
| ForeignItem_ | An item within an  | 
| FunctionRetTy | |
| ImplItemKind | |
| ImplPolarity | |
| IntTy | |
| Item_ | |
| KleeneOp | A Kleene-style repetition operator for token sequences. | 
| LitIntType | |
| Lit_ | |
| MacStmtStyle | |
| MetaItem_ | |
| Mutability | |
| Pat_ | |
| PathListItem_ | |
| PathParameters | |
| PrimTy | Not represented directly in the AST, referred to by name through a ty_path. | 
| Sign | |
| Stmt_ | |
| StrStyle | |
| StructFieldKind | |
| TokenTree | When the main rust parser encounters a syntax-extension invocation, it parses the arguments to the invocation as a token-tree. This is a very loose structure, such that all sorts of different AST-fragments can be passed to syntax extensions using a uniform type. | 
| TraitBoundModifier | A modifier on a bound, currently this is only used for  | 
| TraitItem_ | |
| TyParamBound | The AST represents all type param bounds as types. typeck::collect::compute_bounds matches these against the "special" built-in traits (see middle::lang_items) and detects Copy, Send and Sync. | 
| Ty_ | The different kinds of types recognized by the compiler | 
| UintTy | |
| UnOp | |
| UnsafeSource | |
| Unsafety | |
| VariantData | Fields and Ids of enum variants and structs | 
| ViewPath_ | |
| Visibility | |
| WherePredicate | A single predicate in a  | 
Constants
| CRATE_NODE_ID | Node id used to represent the root of the crate. | 
| DUMMY_NODE_ID | When parsing and doing expansions, we initially give all AST nodes this AST node value. Then later, in the renumber pass, we renumber them to have small, positive ids. | 
| EMPTY_CTXT | 
Traits
| IntSign | |
| NodeIdAssigner | 
Type Definitions
| Attribute | Meta-data associated with an item | 
| BinOp | |
| CrateConfig | The set of MetaItems that define the compilation environment of the crate, used to drive conditional compilation | 
| CrateNum | |
| Decl | |
| ExplicitSelf | |
| Lit | A literal | 
| Mac | |
| MetaItem | |
| Mrk | A mark represents a unique id associated with a macro expansion | 
| NodeId | |
| PathListItem | |
| SpannedIdent | |
| Stmt | A statement | 
| StructField | |
| TyParamBounds | |
| Variant | |
| ViewPath |