Struct rustc::hir::map::DefCollector
[−]
[src]
pub struct DefCollector<'a> { pub visit_macro_invoc: Option<&'a mut FnMut(MacroInvocationData)>, // some fields omitted }
🔬 This is a nightly-only experimental API. (
rustc_private
)Creates def ids for nodes in the AST.
Fields
visit_macro_invoc: Option<&'a mut FnMut(MacroInvocationData)>
🔬 This is a nightly-only experimental API. (
rustc_private
)Methods
impl<'a> DefCollector<'a>
[src]
fn new(definitions: &'a mut Definitions) -> Self
🔬 This is a nightly-only experimental API. (
rustc_private
)fn collect_root(&mut self)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn with_parent<F: FnOnce(&mut Self)>(&mut self, parent_def: DefIndex, f: F)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_const_expr(&mut self, expr: &Expr)
🔬 This is a nightly-only experimental API. (
rustc_private
)Trait Implementations
impl<'a> Visitor<'a> for DefCollector<'a>
[src]
fn visit_item(&mut self, i: &'a Item)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_foreign_item(&mut self, foreign_item: &'a ForeignItem)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_generics(&mut self, generics: &'a Generics)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_trait_item(&mut self, ti: &'a TraitItem)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_impl_item(&mut self, ii: &'a ImplItem)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_pat(&mut self, pat: &'a Pat)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_expr(&mut self, expr: &'a Expr)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_ty(&mut self, ty: &'a Ty)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_lifetime_def(&mut self, def: &'a LifetimeDef)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_stmt(&mut self, stmt: &'a Stmt)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_name(&mut self, _span: Span, _name: Symbol)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_ident(&mut self, span: Span, ident: Ident)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_mod(&mut self, m: &'ast Mod, _s: Span, _n: NodeId)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_local(&mut self, l: &'ast Local)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_block(&mut self, b: &'ast Block)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_arm(&mut self, a: &'ast Arm)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_expr_post(&mut self, _ex: &'ast Expr)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_where_predicate(&mut self, p: &'ast WherePredicate)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_fn(&mut self, fk: FnKind<'ast>, fd: &'ast FnDecl, s: Span, NodeId)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_trait_ref(&mut self, t: &'ast TraitRef)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_ty_param_bound(&mut self, bounds: &'ast TyParamBound)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_poly_trait_ref(&mut self,
t: &'ast PolyTraitRef,
m: &'ast TraitBoundModifier)
t: &'ast PolyTraitRef,
m: &'ast TraitBoundModifier)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_variant_data(&mut self,
s: &'ast VariantData,
Ident,
&'ast Generics,
NodeId,
Span)
s: &'ast VariantData,
Ident,
&'ast Generics,
NodeId,
Span)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_struct_field(&mut self, s: &'ast StructField)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_enum_def(&mut self,
enum_definition: &'ast EnumDef,
generics: &'ast Generics,
item_id: NodeId,
Span)
enum_definition: &'ast EnumDef,
generics: &'ast Generics,
item_id: NodeId,
Span)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_variant(&mut self,
v: &'ast Spanned<Variant_>,
g: &'ast Generics,
item_id: NodeId)
v: &'ast Spanned<Variant_>,
g: &'ast Generics,
item_id: NodeId)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_lifetime(&mut self, lifetime: &'ast Lifetime)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_mac(&mut self, _mac: &'ast Spanned<Mac_>)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_path(&mut self, path: &'ast Path, _id: NodeId)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_path_list_item(&mut self,
prefix: &'ast Path,
item: &'ast Spanned<PathListItem_>)
prefix: &'ast Path,
item: &'ast Spanned<PathListItem_>)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_path_segment(&mut self,
path_span: Span,
path_segment: &'ast PathSegment)
path_span: Span,
path_segment: &'ast PathSegment)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_path_parameters(&mut self,
path_span: Span,
path_parameters: &'ast PathParameters)
path_span: Span,
path_parameters: &'ast PathParameters)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_assoc_type_binding(&mut self, type_binding: &'ast TypeBinding)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_attribute(&mut self, _attr: &'ast Attribute)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_vis(&mut self, vis: &'ast Visibility)
🔬 This is a nightly-only experimental API. (
rustc_private
)fn visit_fn_ret_ty(&mut self, ret_ty: &'ast FunctionRetTy)
🔬 This is a nightly-only experimental API. (
rustc_private
)