about summary refs log tree commit diff
path: root/src/librustdoc/clean
diff options
context:
space:
mode:
authorNoah Lev <camelidcamel@gmail.com>2021-10-28 20:55:02 -0700
committerNoah Lev <camelidcamel@gmail.com>2021-10-30 11:16:24 -0700
commitebe9a11f71f2998e0be4d9b95f4eac5d1e1f82a0 (patch)
treed1c502e2e8b21149a426315976348c8324c84369 /src/librustdoc/clean
parent85f8ae8ec49683df08a598b0f2594dd066f24a11 (diff)
downloadrust-ebe9a11f71f2998e0be4d9b95f4eac5d1e1f82a0.tar.gz
rust-ebe9a11f71f2998e0be4d9b95f4eac5d1e1f82a0.zip
rustdoc: Remove `Crate.name` and instead compute it on-demand
It is not as large as `Crate.src` was, but it's still 8 bytes, and
`clean::Crate` is moved by-value a lot.
Diffstat (limited to 'src/librustdoc/clean')
-rw-r--r--src/librustdoc/clean/types.rs5
-rw-r--r--src/librustdoc/clean/utils.rs2
2 files changed, 4 insertions, 3 deletions
diff --git a/src/librustdoc/clean/types.rs b/src/librustdoc/clean/types.rs
index 24a51a3f154..88fffaecb93 100644
--- a/src/librustdoc/clean/types.rs
+++ b/src/librustdoc/clean/types.rs
@@ -116,7 +116,6 @@ impl From<DefId> for ItemId {
 /// The crate currently being documented.
 #[derive(Clone, Debug)]
 crate struct Crate {
-    crate name: Symbol,
     crate module: Item,
     crate externs: Vec<ExternalCrate>,
     crate primitives: ThinVec<(DefId, PrimitiveType)>,
@@ -130,6 +129,10 @@ crate struct Crate {
 rustc_data_structures::static_assert_size!(Crate, 104);
 
 impl Crate {
+    crate fn name(&self, tcx: TyCtxt<'_>) -> Symbol {
+        ExternalCrate::LOCAL.name(tcx)
+    }
+
     crate fn src(&self, tcx: TyCtxt<'_>) -> FileName {
         ExternalCrate::LOCAL.src(tcx)
     }
diff --git a/src/librustdoc/clean/utils.rs b/src/librustdoc/clean/utils.rs
index c000b656e6a..b0da92081c1 100644
--- a/src/librustdoc/clean/utils.rs
+++ b/src/librustdoc/clean/utils.rs
@@ -57,7 +57,6 @@ crate fn krate(cx: &mut DocContext<'_>) -> Crate {
     }
 
     let local_crate = ExternalCrate { crate_num: LOCAL_CRATE };
-    let name = local_crate.name(cx.tcx);
     let primitives = local_crate.primitives(cx.tcx);
     let keywords = local_crate.keywords(cx.tcx);
     {
@@ -79,7 +78,6 @@ crate fn krate(cx: &mut DocContext<'_>) -> Crate {
     }
 
     Crate {
-        name,
         module,
         externs,
         primitives,