pub fn elaborate_predicates_with_span<'tcx>(
    tcx: TyCtxt<'tcx>,
    predicates: impl Iterator<Item = (Predicate<'tcx>, Span)>
) -> Elaborator<'tcx>Notable traits for Elaborator<'tcx>impl<'tcx> Iterator for Elaborator<'tcx> type Item = PredicateObligation<'tcx>;