Struct rustc_borrowck::type_check::free_region_relations::UniversalRegionRelationsBuilder
source · [−]struct UniversalRegionRelationsBuilder<'this, 'tcx> {
infcx: &'this InferCtxt<'this, 'tcx>,
param_env: ParamEnv<'tcx>,
universal_regions: Rc<UniversalRegions<'tcx>>,
implicit_region_bound: Option<Region<'tcx>>,
constraints: &'this mut MirTypeckRegionConstraints<'tcx>,
relations: UniversalRegionRelations<'tcx>,
region_bound_pairs: Vec<(Region<'tcx>, GenericKind<'tcx>)>,
}Fields
infcx: &'this InferCtxt<'this, 'tcx>param_env: ParamEnv<'tcx>universal_regions: Rc<UniversalRegions<'tcx>>implicit_region_bound: Option<Region<'tcx>>constraints: &'this mut MirTypeckRegionConstraints<'tcx>relations: UniversalRegionRelations<'tcx>region_bound_pairs: Vec<(Region<'tcx>, GenericKind<'tcx>)>Implementations
sourceimpl<'tcx> UniversalRegionRelationsBuilder<'_, 'tcx>
impl<'tcx> UniversalRegionRelationsBuilder<'_, 'tcx>
pub(crate) fn create(self) -> CreateResult<'tcx>
sourcefn add_implied_bounds(
&mut self,
ty: Ty<'tcx>
) -> Option<Rc<QueryRegionConstraints<'tcx>>>
fn add_implied_bounds(
&mut self,
ty: Ty<'tcx>
) -> Option<Rc<QueryRegionConstraints<'tcx>>>
Update the type of a single local, which should represent either the return type of the MIR or one of its arguments. At the same time, compute and add any implied bounds that come from this local.
sourcefn add_outlives_bounds<I>(&mut self, outlives_bounds: I) where
I: IntoIterator<Item = OutlivesBound<'tcx>>,
fn add_outlives_bounds<I>(&mut self, outlives_bounds: I) where
I: IntoIterator<Item = OutlivesBound<'tcx>>,
Registers the OutlivesBound items from outlives_bounds in
the outlives relation as well as the region-bound pairs
listing.
Auto Trait Implementations
impl<'this, 'tcx> !RefUnwindSafe for UniversalRegionRelationsBuilder<'this, 'tcx>
impl<'this, 'tcx> !Send for UniversalRegionRelationsBuilder<'this, 'tcx>
impl<'this, 'tcx> !Sync for UniversalRegionRelationsBuilder<'this, 'tcx>
impl<'this, 'tcx> Unpin for UniversalRegionRelationsBuilder<'this, 'tcx> where
'tcx: 'this,
impl<'this, 'tcx> !UnwindSafe for UniversalRegionRelationsBuilder<'this, '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
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: 328 bytes