diff options
| author | Noah Lev <camelidcamel@gmail.com> | 2021-05-14 17:36:58 -0700 |
|---|---|---|
| committer | Noah Lev <camelidcamel@gmail.com> | 2021-05-14 17:45:41 -0700 |
| commit | f57537e5f3f81426c0eed2a318efe636e9966174 (patch) | |
| tree | 16df655e1dbbb44267ed03409e2eef9be0e99f40 | |
| parent | 1025db84a68b948139b5adcd55da31bce32da8f3 (diff) | |
| download | rust-f57537e5f3f81426c0eed2a318efe636e9966174.tar.gz rust-f57537e5f3f81426c0eed2a318efe636e9966174.zip | |
Box `Impl.blanket_impl` to reduce size
Blanket impls are probably not super common, and `Type` is a fairly large type, so this should reduce `Impl`'s size by a lot: `Option<Type>` is around 96 bytes, and `Option<Box<Type>>` is 8 bytes, so it's a big difference!
| -rw-r--r-- | src/librustdoc/clean/blanket_impl.rs | 2 | ||||
| -rw-r--r-- | src/librustdoc/clean/types.rs | 2 | ||||
| -rw-r--r-- | src/librustdoc/json/conversions.rs | 2 |
3 files changed, 3 insertions, 3 deletions
diff --git a/src/librustdoc/clean/blanket_impl.rs b/src/librustdoc/clean/blanket_impl.rs index 68856f82fe9..090314e3a4b 100644 --- a/src/librustdoc/clean/blanket_impl.rs +++ b/src/librustdoc/clean/blanket_impl.rs @@ -119,7 +119,7 @@ impl<'a, 'tcx> BlanketImplFinder<'a, 'tcx> { .clean(self.cx), negative_polarity: false, synthetic: false, - blanket_impl: Some(trait_ref.self_ty().clean(self.cx)), + blanket_impl: Some(box trait_ref.self_ty().clean(self.cx)), }), cfg: None, }); diff --git a/src/librustdoc/clean/types.rs b/src/librustdoc/clean/types.rs index 7d802636bfa..f0e04018242 100644 --- a/src/librustdoc/clean/types.rs +++ b/src/librustdoc/clean/types.rs @@ -2235,7 +2235,7 @@ crate struct Impl { crate items: Vec<Item>, crate negative_polarity: bool, crate synthetic: bool, - crate blanket_impl: Option<Type>, + crate blanket_impl: Option<Box<Type>>, } impl Impl { diff --git a/src/librustdoc/json/conversions.rs b/src/librustdoc/json/conversions.rs index e0e5db3b563..d2349b42ae9 100644 --- a/src/librustdoc/json/conversions.rs +++ b/src/librustdoc/json/conversions.rs @@ -482,7 +482,7 @@ impl FromWithTcx<clean::Impl> for Impl { items: ids(items), negative: negative_polarity, synthetic, - blanket_impl: blanket_impl.map(|x| x.into_tcx(tcx)), + blanket_impl: blanket_impl.map(|x| (*x).into_tcx(tcx)), } } } |
