[−][src]Struct rustc_passes::dead::DeadVisitor
Fields
tcx: TyCtxt<'tcx>live_symbols: FxHashSet<HirId>Implementations
impl<'tcx> DeadVisitor<'tcx>[src]
fn should_warn_about_item(&mut self, item: &Item<'_>) -> bool[src]
fn should_warn_about_field(&mut self, field: &StructField<'_>) -> bool[src]
fn should_warn_about_variant(&mut self, variant: &Variant<'_>) -> bool[src]
fn should_warn_about_foreign_item(&mut self, fi: &ForeignItem<'_>) -> bool[src]
fn symbol_is_live(&mut self, id: HirId) -> bool[src]
fn warn_dead_code(
&mut self,
id: HirId,
span: Span,
name: Symbol,
participle: &str
)[src]
&mut self,
id: HirId,
span: Span,
name: Symbol,
participle: &str
)
Trait Implementations
impl<'tcx> Visitor<'tcx> for DeadVisitor<'tcx>[src]
type Map = Map<'tcx>
fn nested_visit_map(&mut self) -> NestedVisitorMap<Self::Map>[src]
Walk nested items in place so that we don't report dead-code on inner functions when the outer function is already getting an error. We could do this also by checking the parents, but this is how the code is setup and it seems harmless enough.
fn visit_item(&mut self, item: &'tcx Item<'tcx>)[src]
fn visit_variant(
&mut self,
variant: &'tcx Variant<'tcx>,
g: &'tcx Generics<'tcx>,
id: HirId
)[src]
&mut self,
variant: &'tcx Variant<'tcx>,
g: &'tcx Generics<'tcx>,
id: HirId
)
fn visit_foreign_item(&mut self, fi: &'tcx ForeignItem<'tcx>)[src]
fn visit_struct_field(&mut self, field: &'tcx StructField<'tcx>)[src]
fn visit_impl_item(&mut self, impl_item: &'tcx ImplItem<'tcx>)[src]
fn visit_trait_item(&mut self, trait_item: &'tcx TraitItem<'tcx>)[src]
fn visit_nested_item(&mut self, id: ItemId)[src]
fn visit_nested_trait_item(&mut self, id: TraitItemId)[src]
fn visit_nested_impl_item(&mut self, id: ImplItemId)[src]
fn visit_nested_body(&mut self, id: BodyId)[src]
fn visit_param(&mut self, param: &'v Param<'v>)[src]
fn visit_body(&mut self, b: &'v Body<'v>)[src]
fn as_deep_visitor(&mut self) -> DeepVisitor<'_, Self>[src]
fn visit_id(&mut self, _hir_id: HirId)[src]
fn visit_name(&mut self, _span: Span, _name: Symbol)[src]
fn visit_ident(&mut self, ident: Ident)[src]
fn visit_mod(&mut self, m: &'v Mod<'v>, _s: Span, n: HirId)[src]
fn visit_local(&mut self, l: &'v Local<'v>)[src]
fn visit_block(&mut self, b: &'v Block<'v>)[src]
fn visit_stmt(&mut self, s: &'v Stmt<'v>)[src]
fn visit_arm(&mut self, a: &'v Arm<'v>)[src]
fn visit_pat(&mut self, p: &'v Pat<'v>)[src]
fn visit_anon_const(&mut self, c: &'v AnonConst)[src]
fn visit_expr(&mut self, ex: &'v Expr<'v>)[src]
fn visit_ty(&mut self, t: &'v Ty<'v>)[src]
fn visit_generic_param(&mut self, p: &'v GenericParam<'v>)[src]
fn visit_generics(&mut self, g: &'v Generics<'v>)[src]
fn visit_where_predicate(&mut self, predicate: &'v WherePredicate<'v>)[src]
fn visit_fn_decl(&mut self, fd: &'v FnDecl<'v>)[src]
fn visit_fn(
&mut self,
fk: FnKind<'v>,
fd: &'v FnDecl<'v>,
b: BodyId,
s: Span,
id: HirId
)[src]
&mut self,
fk: FnKind<'v>,
fd: &'v FnDecl<'v>,
b: BodyId,
s: Span,
id: HirId
)
fn visit_use(&mut self, path: &'v Path<'v>, hir_id: HirId)[src]
fn visit_trait_item_ref(&mut self, ii: &'v TraitItemRef)[src]
fn visit_impl_item_ref(&mut self, ii: &'v ImplItemRef<'v>)[src]
fn visit_trait_ref(&mut self, t: &'v TraitRef<'v>)[src]
fn visit_param_bound(&mut self, bounds: &'v GenericBound<'v>)[src]
fn visit_poly_trait_ref(
&mut self,
t: &'v PolyTraitRef<'v>,
m: TraitBoundModifier
)[src]
&mut self,
t: &'v PolyTraitRef<'v>,
m: TraitBoundModifier
)
fn visit_variant_data(
&mut self,
s: &'v VariantData<'v>,
Symbol,
&'v Generics<'v>,
_parent_id: HirId,
Span
)[src]
&mut self,
s: &'v VariantData<'v>,
Symbol,
&'v Generics<'v>,
_parent_id: HirId,
Span
)
fn visit_enum_def(
&mut self,
enum_definition: &'v EnumDef<'v>,
generics: &'v Generics<'v>,
item_id: HirId,
Span
)[src]
&mut self,
enum_definition: &'v EnumDef<'v>,
generics: &'v Generics<'v>,
item_id: HirId,
Span
)
fn visit_label(&mut self, label: &'v Label)[src]
fn visit_generic_arg(&mut self, generic_arg: &'v GenericArg<'v>)[src]
fn visit_lifetime(&mut self, lifetime: &'v Lifetime)[src]
fn visit_qpath(&mut self, qpath: &'v QPath<'v>, id: HirId, span: Span)[src]
fn visit_path(&mut self, path: &'v Path<'v>, _id: HirId)[src]
fn visit_path_segment(
&mut self,
path_span: Span,
path_segment: &'v PathSegment<'v>
)[src]
&mut self,
path_span: Span,
path_segment: &'v PathSegment<'v>
)
fn visit_generic_args(
&mut self,
path_span: Span,
generic_args: &'v GenericArgs<'v>
)[src]
&mut self,
path_span: Span,
generic_args: &'v GenericArgs<'v>
)
fn visit_assoc_type_binding(&mut self, type_binding: &'v TypeBinding<'v>)[src]
fn visit_attribute(&mut self, _attr: &'v Attribute)[src]
fn visit_macro_def(&mut self, macro_def: &'v MacroDef<'v>)[src]
fn visit_vis(&mut self, vis: &'v Spanned<VisibilityKind<'v>>)[src]
fn visit_associated_item_kind(&mut self, kind: &'v AssocItemKind)[src]
fn visit_defaultness(&mut self, defaultness: &'v Defaultness)[src]
Auto Trait Implementations
impl<'tcx> !RefUnwindSafe for DeadVisitor<'tcx>
impl<'tcx> !Send for DeadVisitor<'tcx>
impl<'tcx> !Sync for DeadVisitor<'tcx>
impl<'tcx> Unpin for DeadVisitor<'tcx>
impl<'tcx> !UnwindSafe for DeadVisitor<'tcx>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,