[−][src]Struct rustc_middle::traits::DerivedObligationCause

pub struct DerivedObligationCause<'tcx> {
    pub parent_trait_ref: PolyTraitRef<'tcx>,
    pub parent_code: Rc<ObligationCauseCode<'tcx>>,
}

Fields

parent_trait_ref: PolyTraitRef<'tcx>

The trait reference of the parent obligation that led to the current obligation. Note that only trait obligations lead to derived obligations, so we just store the trait reference here directly.

parent_code: Rc<ObligationCauseCode<'tcx>>

The parent trait had this cause.

Trait Implementations

impl<'tcx> Clone for DerivedObligationCause<'tcx>[src]

impl<'tcx> Debug for DerivedObligationCause<'tcx>[src]

impl<'tcx> Eq for DerivedObligationCause<'tcx>[src]

impl<'tcx> Hash for DerivedObligationCause<'tcx>[src]

impl<'tcx, '__lifted> Lift<'__lifted> for DerivedObligationCause<'tcx>[src]

type Lifted = DerivedObligationCause<'__lifted>

impl<'tcx> PartialEq<DerivedObligationCause<'tcx>> for DerivedObligationCause<'tcx>[src]

impl<'tcx> StructuralEq for DerivedObligationCause<'tcx>[src]

impl<'tcx> StructuralPartialEq for DerivedObligationCause<'tcx>[src]

Auto Trait Implementations

impl<'tcx> !RefUnwindSafe for DerivedObligationCause<'tcx>

impl<'tcx> !Send for DerivedObligationCause<'tcx>

impl<'tcx> !Sync for DerivedObligationCause<'tcx>

impl<'tcx> Unpin for DerivedObligationCause<'tcx>

impl<'tcx> !UnwindSafe for DerivedObligationCause<'tcx>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized, 
[src]

impl<T> Borrow<T> for T where
    T: ?Sized, 
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized, 
[src]

impl<'a, T> Captures<'a> for T where
    T: ?Sized, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> MaybeResult<T> for T[src]

type Error = !

impl<T> ToOwned for T where
    T: Clone, 
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> WithConstness for T[src]