Struct rustc_const_eval::transform::check_consts::qualifs::NeedsNonConstDrop
source · pub struct NeedsNonConstDrop;
Expand description
Constant containing an ADT that implements non-const Drop
.
This must be ruled out because we cannot run Drop
during compile-time.
Trait Implementations§
source§impl Qualif for NeedsNonConstDrop
impl Qualif for NeedsNonConstDrop
source§const ANALYSIS_NAME: &'static str = "flow_needs_nonconst_drop"
const ANALYSIS_NAME: &'static str = "flow_needs_nonconst_drop"
The name of the file used to debug the dataflow analysis that computes this qualif.
source§const IS_CLEARED_ON_MOVE: bool = true
const IS_CLEARED_ON_MOVE: bool = true
Whether this
Qualif
is cleared when a local is moved from.source§const ALLOW_PROMOTED: bool = true
const ALLOW_PROMOTED: bool = true
Whether this
Qualif
might be evaluated after the promotion and can encounter a promoted.source§fn in_qualifs(qualifs: &ConstQualifs) -> bool
fn in_qualifs(qualifs: &ConstQualifs) -> bool
Extracts the field of
ConstQualifs
that corresponds to this Qualif
.source§fn in_adt_inherently<'tcx>(
cx: &ConstCx<'_, 'tcx>,
adt: AdtDef<'tcx>,
_: GenericArgsRef<'tcx>
) -> bool
fn in_adt_inherently<'tcx>( cx: &ConstCx<'_, 'tcx>, adt: AdtDef<'tcx>, _: GenericArgsRef<'tcx> ) -> bool
Auto Trait Implementations§
impl DynSend for NeedsNonConstDrop
impl DynSync for NeedsNonConstDrop
impl Freeze for NeedsNonConstDrop
impl RefUnwindSafe for NeedsNonConstDrop
impl Send for NeedsNonConstDrop
impl Sync for NeedsNonConstDrop
impl Unpin for NeedsNonConstDrop
impl UnwindSafe for NeedsNonConstDrop
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, R> CollectAndApply<T, R> for T
impl<T, R> CollectAndApply<T, R> for T
§impl<T> Filterable for T
impl<T> Filterable for T
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<P> IntoQueryParam<P> for P
impl<P> IntoQueryParam<P> for P
fn into_query_param(self) -> P
source§impl<T> MaybeResult<T> for T
impl<T> MaybeResult<T> for T
§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<'tcx, T> ToPredicate<'tcx, T> for T
impl<'tcx, T> ToPredicate<'tcx, T> for T
fn to_predicate(self, _tcx: TyCtxt<'tcx>) -> T
source§impl<Tcx, T> Value<Tcx> for Twhere
Tcx: DepContext,
impl<Tcx, T> Value<Tcx> for Twhere
Tcx: DepContext,
default fn from_cycle_error( tcx: Tcx, cycle_error: &CycleError, _guar: ErrorGuaranteed ) -> T
source§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>
impl<'a, T> Captures<'a> for Twhere
T: ?Sized,
impl<T> ErasedDestructor for Twhere
T: 'static,
impl<T> MaybeSendSync for T
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: 0 bytes