about summary refs log tree commit diff
path: root/compiler/rustc_middle/src
diff options
context:
space:
mode:
authorVadim Petrochenkov <vadim.petrochenkov@gmail.com>2021-12-18 20:07:58 +0800
committerVadim Petrochenkov <vadim.petrochenkov@gmail.com>2022-01-09 09:22:04 +0800
commit96c6a50e9650fe4fbbd2abf547ed39cc108b69f1 (patch)
tree3b5a74ad2162b79caff01b243fb8026a35b883ea /compiler/rustc_middle/src
parent23ce5fc4655ed546f74a85fc8836e95bec0c64fd (diff)
downloadrust-96c6a50e9650fe4fbbd2abf547ed39cc108b69f1.tar.gz
rust-96c6a50e9650fe4fbbd2abf547ed39cc108b69f1.zip
rustc_metadata: Optimize and document module children decoding
Diffstat (limited to 'compiler/rustc_middle/src')
-rw-r--r--compiler/rustc_middle/src/ty/print/pretty.rs4
1 files changed, 3 insertions, 1 deletions
diff --git a/compiler/rustc_middle/src/ty/print/pretty.rs b/compiler/rustc_middle/src/ty/print/pretty.rs
index 47a9234419c..f7a2cc126ce 100644
--- a/compiler/rustc_middle/src/ty/print/pretty.rs
+++ b/compiler/rustc_middle/src/ty/print/pretty.rs
@@ -2615,7 +2615,9 @@ fn for_each_def(tcx: TyCtxt<'_>, mut collect_fn: impl for<'b> FnMut(&'b Ident, N
                         collect_fn(&child.ident, ns, def_id);
                     }
 
-                    if seen_defs.insert(def_id) {
+                    if matches!(defkind, DefKind::Mod | DefKind::Enum | DefKind::Trait)
+                        && seen_defs.insert(def_id)
+                    {
                         queue.push(def_id);
                     }
                 }