[−][src]Struct rustc_passes::dead::MarkSymbolVisitor

pub(in dead) struct MarkSymbolVisitor<'tcx> {
    worklist: Vec<HirId>,
    tcx: TyCtxt<'tcx>,
    maybe_typeck_results: Option<&'tcx TypeckResults<'tcx>>,
    live_symbols: FxHashSet<HirId>,
    repr_has_repr_c: bool,
    in_pat: bool,
    inherited_pub_visibility: bool,
    ignore_variant_stack: Vec<DefId>,
    struct_constructors: FxHashMap<HirId, HirId>,
}

Fields

worklist: Vec<HirId>tcx: TyCtxt<'tcx>maybe_typeck_results: Option<&'tcx TypeckResults<'tcx>>live_symbols: FxHashSet<HirId>repr_has_repr_c: boolin_pat: boolinherited_pub_visibility: boolignore_variant_stack: Vec<DefId>struct_constructors: FxHashMap<HirId, HirId>

Implementations

impl<'tcx> MarkSymbolVisitor<'tcx>[src]

pub(in dead) fn typeck_results(
    &self
) -> &'tcx TypeckResults<'tcx>
[src]

Gets the type-checking results for the current body. As this will ICE if called outside bodies, only call when working with Expr or Pat nodes (they are guaranteed to be found only in bodies).

pub(in dead) fn check_def_id(
    &mut self,
    def_id: DefId
)
[src]

pub(in dead) fn insert_def_id(
    &mut self,
    def_id: DefId
)
[src]

pub(in dead) fn handle_res(
    &mut self,
    res: Res
)
[src]

pub(in dead) fn lookup_and_handle_method(
    &mut self,
    id: HirId
)
[src]

pub(in dead) fn handle_field_access(
    &mut self,
    lhs: &Expr<'_>,
    hir_id: HirId
)
[src]

pub(in dead) fn handle_field_pattern_match(
    &mut self,
    lhs: &Pat<'_>,
    res: Res,
    pats: &[FieldPat<'_>]
)
[src]

pub(in dead) fn mark_live_symbols(
    &mut self
)
[src]

pub(in dead) fn visit_node(
    &mut self,
    node: Node<'tcx>
)
[src]

pub(in dead) fn mark_as_used_if_union(
    &mut self,
    adt: &AdtDef,
    fields: &[Field<'_>]
)
[src]

Trait Implementations

impl<'tcx> Visitor<'tcx> for MarkSymbolVisitor<'tcx>[src]

type Map = ErasedMap<'tcx>

Auto Trait Implementations

impl<'tcx> !RefUnwindSafe for MarkSymbolVisitor<'tcx>

impl<'tcx> !Send for MarkSymbolVisitor<'tcx>

impl<'tcx> !Sync for MarkSymbolVisitor<'tcx>

impl<'tcx> Unpin for MarkSymbolVisitor<'tcx>

impl<'tcx> !UnwindSafe for MarkSymbolVisitor<'tcx>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized, 
[src]

impl<T> Borrow<T> for T where
    T: ?Sized, 
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.