Struct rustc_middle::traits::query::DtorckConstraint [−][src]
pub struct DtorckConstraint<'tcx> {
pub outlives: Vec<GenericArg<'tcx>>,
pub dtorck_types: Vec<Ty<'tcx>>,
pub overflows: Vec<Ty<'tcx>>,
}Expand description
A set of constraints that need to be satisfied in order for a type to be valid for destruction.
Fields
outlives: Vec<GenericArg<'tcx>>Expand description
Types that are required to be alive in order for this type to be valid for destruction.
dtorck_types: Vec<Ty<'tcx>>Expand description
Types that could not be resolved: projections and params.
overflows: Vec<Ty<'tcx>>Expand description
If, during the computation of the dtorck constraint, we overflow, that gets recorded here. The caller is expected to report an error.
Implementations
impl<'tcx> DtorckConstraint<'tcx>[src]
impl<'tcx> DtorckConstraint<'tcx>[src]pub fn empty() -> DtorckConstraint<'tcx>[src]
Trait Implementations
impl<'tcx> Clone for DtorckConstraint<'tcx>[src]
impl<'tcx> Clone for DtorckConstraint<'tcx>[src]fn clone(&self) -> DtorckConstraint<'tcx>[src]
fn clone(&self) -> DtorckConstraint<'tcx>[src]Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0[src]
fn clone_from(&mut self, source: &Self)1.0.0[src]Performs copy-assignment from source. Read more
impl<'tcx> Debug for DtorckConstraint<'tcx>[src]
impl<'tcx> Debug for DtorckConstraint<'tcx>[src]impl<'tcx> FromIterator<DtorckConstraint<'tcx>> for DtorckConstraint<'tcx>[src]
impl<'tcx> FromIterator<DtorckConstraint<'tcx>> for DtorckConstraint<'tcx>[src]fn from_iter<I: IntoIterator<Item = DtorckConstraint<'tcx>>>(iter: I) -> Self[src]
fn from_iter<I: IntoIterator<Item = DtorckConstraint<'tcx>>>(iter: I) -> Self[src]Creates a value from an iterator. Read more
impl<'tcx, '__ctx> HashStable<StableHashingContext<'__ctx>> for DtorckConstraint<'tcx>[src]
impl<'tcx, '__ctx> HashStable<StableHashingContext<'__ctx>> for DtorckConstraint<'tcx>[src]fn hash_stable(
&self,
__hcx: &mut StableHashingContext<'__ctx>,
__hasher: &mut StableHasher
)[src]
&self,
__hcx: &mut StableHashingContext<'__ctx>,
__hasher: &mut StableHasher
)
Auto Trait Implementations
impl<'tcx> !RefUnwindSafe for DtorckConstraint<'tcx>
impl<'tcx> !Send for DtorckConstraint<'tcx>
impl<'tcx> !Sync for DtorckConstraint<'tcx>
impl<'tcx> Unpin for DtorckConstraint<'tcx>
impl<'tcx> !UnwindSafe for DtorckConstraint<'tcx>
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]pub fn borrow_mut(&mut self) -> &mut T[src]
pub fn borrow_mut(&mut self) -> &mut T[src]Mutably borrows from an owned value. Read more
impl<T> MaybeResult<T> for T[src]
impl<T> MaybeResult<T> for T[src]impl<T> ToOwned for T where
T: Clone, [src]
impl<T> ToOwned for T where
T: Clone, [src]type Owned = T
type Owned = TThe resulting type after obtaining ownership.
pub fn to_owned(&self) -> T[src]
pub fn to_owned(&self) -> T[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)[src]
pub fn clone_into(&self, target: &mut T)[src]🔬 This is a nightly-only experimental API. (toowned_clone_into)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<T> WithConstness for T[src]
impl<T> WithConstness for T[src]fn with_constness(self, constness: Constness) -> ConstnessAnd<Self>[src]
fn with_const(self) -> ConstnessAnd<Self>[src]
fn without_const(self) -> ConstnessAnd<Self>[src]
impl<'a, T> Captures<'a> for T where
T: ?Sized, [src]
T: ?Sized,