From 3241b6357c96f62c7adf89b3abdbf362f519c26b Mon Sep 17 00:00:00 2001 From: Roc Yu Date: Sun, 26 Dec 2021 13:39:16 -0500 Subject: [PATCH 1/2] Remove `retain` call --- src/librustdoc/clean/simplify.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/librustdoc/clean/simplify.rs b/src/librustdoc/clean/simplify.rs index 4c81e75e8d630..f0c4da3a94516 100644 --- a/src/librustdoc/clean/simplify.rs +++ b/src/librustdoc/clean/simplify.rs @@ -50,7 +50,7 @@ crate fn where_clauses(cx: &DocContext<'_>, clauses: Vec) -> Vec { // Look for equality predicates on associated types that can be merged into // general bound predicates - equalities.retain(|&(ref lhs, ref rhs)| { + let equalities = equalities.into_iter().filter(|&(ref lhs, ref rhs)| { let (self_, trait_did, name) = if let Some(p) = lhs.projection() { p } else { @@ -83,7 +83,7 @@ crate fn where_clauses(cx: &DocContext<'_>, clauses: Vec) -> Vec { bounds, bound_params, })); - clauses.extend(equalities.into_iter().map(|(lhs, rhs)| WP::EqPredicate { lhs, rhs })); + clauses.extend(equalities.map(|(lhs, rhs)| WP::EqPredicate { lhs, rhs })); clauses } From 23506c42aece08d0b54e84b733c1a2e8b9fdacad Mon Sep 17 00:00:00 2001 From: Roc Yu Date: Sun, 26 Dec 2021 15:53:38 -0500 Subject: [PATCH 2/2] Reorder `extend` statements --- src/librustdoc/clean/simplify.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/librustdoc/clean/simplify.rs b/src/librustdoc/clean/simplify.rs index f0c4da3a94516..1f6f7bdf03693 100644 --- a/src/librustdoc/clean/simplify.rs +++ b/src/librustdoc/clean/simplify.rs @@ -73,6 +73,7 @@ crate fn where_clauses(cx: &DocContext<'_>, clauses: Vec) -> Vec { clauses.extend( lifetimes.into_iter().map(|(lt, bounds)| WP::RegionPredicate { lifetime: lt, bounds }), ); + clauses.extend(equalities.map(|(lhs, rhs)| WP::EqPredicate { lhs, rhs })); clauses.extend(params.into_iter().map(|(k, (bounds, params))| WP::BoundPredicate { ty: clean::Generic(k), bounds, @@ -83,7 +84,6 @@ crate fn where_clauses(cx: &DocContext<'_>, clauses: Vec) -> Vec { bounds, bound_params, })); - clauses.extend(equalities.map(|(lhs, rhs)| WP::EqPredicate { lhs, rhs })); clauses }