Struct rustc_const_eval::transform::check_consts::check::Qualifs [−][src]
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>>>,
indirectly_mutable: Option<ResultsCursor<'mir, 'tcx, MaybeMutBorrowedLocals<'mir, 'tcx>>>,
}
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>>>
indirectly_mutable: Option<ResultsCursor<'mir, 'tcx, MaybeMutBorrowedLocals<'mir, 'tcx>>>
Implementations
pub fn indirectly_mutable(
&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
Returns true
if local
is NeedsNonConstDrop
at the given Location
.
Only updates the cursor if absolutely necessary
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>,
error_occured: Option<ErrorReported>
) -> ConstQualifs
Trait Implementations
Auto Trait Implementations
impl<'mir, 'tcx> !RefUnwindSafe for Qualifs<'mir, 'tcx>
impl<'mir, 'tcx> !UnwindSafe for Qualifs<'mir, 'tcx>
Blanket Implementations
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: 440 bytes