pub(super) fn get_explanation_based_on_obligation<'tcx>(
    tcx: TyCtxt<'tcx>,
    obligation: &PredicateObligation<'tcx>,
    trait_ref: PolyTraitRef<'tcx>,
    trait_predicate: &PolyTraitPredicate<'tcx>,
    pre_message: String
) -> String