[−][src]Trait rustc_trait_selection::traits::select::TraitObligationExt
Required methods
pub(in traits::select) fn derived_cause(
&self,
variant: fn(_: DerivedObligationCause<'tcx>) -> ObligationCauseCode<'tcx>
) -> ObligationCause<'tcx>[src]
&self,
variant: fn(_: DerivedObligationCause<'tcx>) -> ObligationCauseCode<'tcx>
) -> ObligationCause<'tcx>
Implementors
impl<'tcx> TraitObligationExt<'tcx> for TraitObligation<'tcx>[src]
pub(in traits::select) fn derived_cause(
&self,
variant: fn(_: DerivedObligationCause<'tcx>) -> ObligationCauseCode<'tcx>
) -> ObligationCause<'tcx>[src]
&self,
variant: fn(_: DerivedObligationCause<'tcx>) -> ObligationCauseCode<'tcx>
) -> ObligationCause<'tcx>
Creates a cause for obligations that are derived from
obligation by a recursive search (e.g., for a builtin
bound, or eventually a auto trait Foo). If obligation
is itself a derived obligation, this is just a clone, but
otherwise we create a "derived obligation" cause so as to
keep track of the original root obligation for error
reporting.