Struct rustc_const_eval::transform::check_consts::check::Qualifs
source · [−]pub struct Qualifs<'mir, 'tcx> {
has_mut_interior: Option<ResultsCursor<'mir, 'tcx, FlowSensitiveAnalysis<'mir, 'mir, 'tcx, HasMutInterior>>>,
needs_drop: Option<ResultsCursor<'mir, 'tcx, FlowSensitiveAnalysis<'mir, 'mir, 'tcx, NeedsDrop>>>,
needs_non_const_drop: Option<ResultsCursor<'mir, 'tcx, FlowSensitiveAnalysis<'mir, 'mir, 'tcx, NeedsNonConstDrop>>>,
}
Fields
has_mut_interior: Option<ResultsCursor<'mir, 'tcx, FlowSensitiveAnalysis<'mir, 'mir, 'tcx, HasMutInterior>>>
needs_drop: Option<ResultsCursor<'mir, 'tcx, FlowSensitiveAnalysis<'mir, 'mir, 'tcx, NeedsDrop>>>
needs_non_const_drop: Option<ResultsCursor<'mir, 'tcx, FlowSensitiveAnalysis<'mir, 'mir, 'tcx, NeedsNonConstDrop>>>
Implementations
sourceimpl<'mir, 'tcx> Qualifs<'mir, 'tcx>
impl<'mir, 'tcx> Qualifs<'mir, 'tcx>
sourcepub fn needs_drop(
&mut self,
ccx: &'mir ConstCx<'mir, 'tcx>,
local: Local,
location: Location
) -> bool
pub fn needs_drop(
&mut self,
ccx: &'mir ConstCx<'mir, 'tcx>,
local: Local,
location: Location
) -> bool
Returns true
if local
is NeedsDrop
at the given Location
.
Only updates the cursor if absolutely necessary
sourcepub fn needs_non_const_drop(
&mut self,
ccx: &'mir ConstCx<'mir, 'tcx>,
local: Local,
location: Location
) -> bool
pub fn needs_non_const_drop(
&mut self,
ccx: &'mir ConstCx<'mir, 'tcx>,
local: Local,
location: Location
) -> bool
Returns true
if local
is NeedsNonConstDrop
at the given Location
.
Only updates the cursor if absolutely necessary
sourcepub fn has_mut_interior(
&mut self,
ccx: &'mir ConstCx<'mir, 'tcx>,
local: Local,
location: Location
) -> bool
pub fn has_mut_interior(
&mut self,
ccx: &'mir ConstCx<'mir, 'tcx>,
local: Local,
location: Location
) -> bool
Returns true
if local
is HasMutInterior
at the given Location
.
Only updates the cursor if absolutely necessary.
fn in_return_place(
&mut self,
ccx: &'mir ConstCx<'mir, 'tcx>,
tainted_by_errors: Option<ErrorGuaranteed>
) -> ConstQualifs
Trait Implementations
Auto Trait Implementations
impl<'mir, 'tcx> !RefUnwindSafe for Qualifs<'mir, 'tcx>
impl<'mir, 'tcx> !Send for Qualifs<'mir, 'tcx>
impl<'mir, 'tcx> !Sync for Qualifs<'mir, 'tcx>
impl<'mir, 'tcx> Unpin for Qualifs<'mir, 'tcx>where
'tcx: 'mir,
impl<'mir, 'tcx> !UnwindSafe for Qualifs<'mir, 'tcx>
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
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: 408 bytes