Struct rustdoc::passes::strip_hidden::Stripper
source · struct Stripper<'a, 'tcx> {
retained: &'a mut FxHashSet<ItemId>,
update_retained: bool,
tcx: TyCtxt<'tcx>,
is_in_hidden_item: bool,
last_reexport: Option<LocalDefId>,
}
Fields§
§retained: &'a mut FxHashSet<ItemId>
§update_retained: bool
§tcx: TyCtxt<'tcx>
§last_reexport: Option<LocalDefId>
Implementations§
source§impl<'a, 'tcx> Stripper<'a, 'tcx>
impl<'a, 'tcx> Stripper<'a, 'tcx>
fn set_last_reexport_then_fold_item(&mut self, i: Item) -> Item
sourcefn recurse_in_impl_or_exported_macro(&mut self, i: Item) -> Item
fn recurse_in_impl_or_exported_macro(&mut self, i: Item) -> Item
In case i
is a non-hidden impl block, then we special-case it by changing the value
of is_in_hidden_item
to true
because the impl children inherit its visibility.
Trait Implementations§
source§impl<'a, 'tcx> DocFolder for Stripper<'a, 'tcx>
impl<'a, 'tcx> DocFolder for Stripper<'a, 'tcx>
fn fold_item(&mut self, i: Item) -> Option<Item>
source§fn fold_inner_recur(&mut self, kind: ItemKind) -> ItemKind
fn fold_inner_recur(&mut self, kind: ItemKind) -> ItemKind
don’t override!
source§fn fold_item_recur(&mut self, item: Item) -> Item
fn fold_item_recur(&mut self, item: Item) -> Item
don’t override!
fn fold_mod(&mut self, m: Module) -> Module
fn fold_crate(&mut self, c: Crate) -> Crate
Auto Trait Implementations§
impl<'a, 'tcx> Freeze for Stripper<'a, 'tcx>
impl<'a, 'tcx> !RefUnwindSafe for Stripper<'a, 'tcx>
impl<'a, 'tcx> !Send for Stripper<'a, 'tcx>
impl<'a, 'tcx> !Sync for Stripper<'a, 'tcx>
impl<'a, 'tcx> Unpin for Stripper<'a, 'tcx>
impl<'a, 'tcx> !UnwindSafe for Stripper<'a, 'tcx>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
source§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
source§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 24 bytes