From 537b82cfad55dda93592aad6538790ddbffa3dfe Mon Sep 17 00:00:00 2001 From: Noah Lev Date: Sun, 31 Oct 2021 19:58:28 -0700 Subject: [PATCH] rustdoc: Remove unnecessary clone in `DocFolder` Also, contrary to the comment, the clone is not that small, since `Variant` contains `Item`s, which are quite large when you factor in both stack- and heap-allocated memory. --- src/librustdoc/fold.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/librustdoc/fold.rs b/src/librustdoc/fold.rs index f84850c0fe1f..23a9d085b327 100644 --- a/src/librustdoc/fold.rs +++ b/src/librustdoc/fold.rs @@ -47,7 +47,6 @@ crate trait DocFolder: Sized { ImplItem(i) } VariantItem(i) => { - let i2 = i.clone(); // this clone is small match i { Variant::Struct(mut j) => { let num_fields = j.fields.len(); @@ -60,7 +59,7 @@ crate trait DocFolder: Sized { let fields = fields.into_iter().filter_map(|x| self.fold_item(x)).collect(); VariantItem(Variant::Tuple(fields)) } - _ => VariantItem(i2), + i => VariantItem(i), } } x => x,