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

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

Fields

parent_trait_ref: Binder<TraitRef<'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.

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<T> From<T> for T[src]

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

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]