Struct rustc_typeck::outlives::implicit_infer::InferVisitor
source · [−]pub struct InferVisitor<'cx, 'tcx> {
tcx: TyCtxt<'tcx>,
global_inferred_outlives: &'cx mut FxHashMap<DefId, BTreeMap<OutlivesPredicate<GenericArg<'tcx>, Region<'tcx>>, Span>>,
predicates_added: &'cx mut bool,
explicit_map: &'cx mut ExplicitPredicatesMap<'tcx>,
}Fields
tcx: TyCtxt<'tcx>global_inferred_outlives: &'cx mut FxHashMap<DefId, BTreeMap<OutlivesPredicate<GenericArg<'tcx>, Region<'tcx>>, Span>>predicates_added: &'cx mut boolexplicit_map: &'cx mut ExplicitPredicatesMap<'tcx>Trait Implementations
sourceimpl<'cx, 'tcx> ItemLikeVisitor<'tcx> for InferVisitor<'cx, 'tcx>
impl<'cx, 'tcx> ItemLikeVisitor<'tcx> for InferVisitor<'cx, 'tcx>
fn visit_item(&mut self, item: &Item<'_>)
fn visit_trait_item(&mut self, _trait_item: &'tcx TraitItem<'tcx>)
fn visit_impl_item(&mut self, _impl_item: &'tcx ImplItem<'tcx>)
fn visit_foreign_item(&mut self, _foreign_item: &'tcx ForeignItem<'tcx>)
Auto Trait Implementations
impl<'cx, 'tcx> !RefUnwindSafe for InferVisitor<'cx, 'tcx>
impl<'cx, 'tcx> !Send for InferVisitor<'cx, 'tcx>
impl<'cx, 'tcx> !Sync for InferVisitor<'cx, 'tcx>
impl<'cx, 'tcx> Unpin for InferVisitor<'cx, 'tcx> where
'tcx: 'cx,
impl<'cx, 'tcx> !UnwindSafe for InferVisitor<'cx, 'tcx>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<'a, T> Captures<'a> for T where
T: ?Sized,
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: 32 bytes