rustc_trait_selection::traits::query::dropck_outlives

Function trivial_dropck_outlives

source
pub fn trivial_dropck_outlives<'tcx>(tcx: TyCtxt<'tcx>, ty: Ty<'tcx>) -> bool
Expand description

This returns true if the type ty is “trivial” for dropck-outlives – that is, if it doesn’t require any types to outlive. This is similar but not quite the same as the needs_drop test in the compiler already – that is, for every type T for which this function return true, needs-drop would return false. But the reverse does not hold: in particular, needs_drop returns false for PhantomData, but it is not trivial for dropck-outlives.

Note also that needs_drop requires a “global” type (i.e., one with erased regions), but this function does not.