pub fn fold_list<'tcx, F, T>( list: &'tcx List<T>, folder: &mut F, intern: impl FnOnce(TyCtxt<'tcx>, &[T]) -> &'tcx List<T>) -> &'tcx List<T> where F: TypeFolder<'tcx>, T: TypeFoldable<'tcx> + PartialEq + Copy,