diff options
| author | Guillaume Gomez <guillaume.gomez@huawei.com> | 2023-07-27 14:58:42 +0200 |
|---|---|---|
| committer | Guillaume Gomez <guillaume.gomez@huawei.com> | 2023-07-29 14:39:10 +0200 |
| commit | 31bb3c0cd191b9173f254ebe7371eda638af6a6c (patch) | |
| tree | a5662e2fea00604713347b251774929bd343f822 /src | |
| parent | f45961b60dba72a6d0be4c29872941982cc26c2e (diff) | |
| download | rust-31bb3c0cd191b9173f254ebe7371eda638af6a6c.tar.gz rust-31bb3c0cd191b9173f254ebe7371eda638af6a6c.zip | |
Move Res check into `should_ignore_res`
Diffstat (limited to 'src')
| -rw-r--r-- | src/librustdoc/clean/mod.rs | 4 | ||||
| -rw-r--r-- | src/librustdoc/visit_ast.rs | 7 |
2 files changed, 8 insertions, 3 deletions
diff --git a/src/librustdoc/clean/mod.rs b/src/librustdoc/clean/mod.rs index 9839b82d7d7..4fe7c0b7a00 100644 --- a/src/librustdoc/clean/mod.rs +++ b/src/librustdoc/clean/mod.rs @@ -41,7 +41,7 @@ use thin_vec::ThinVec; use crate::core::{self, DocContext, ImplTraitParam}; use crate::formats::item_type::ItemType; -use crate::visit_ast::Module as DocModule; +use crate::visit_ast::{should_ignore_res, Module as DocModule}; use utils::*; @@ -2809,7 +2809,7 @@ fn clean_use_statement_inner<'tcx>( cx: &mut DocContext<'tcx>, inlined_names: &mut FxHashSet<(ItemType, Symbol)>, ) -> Vec<Item> { - if let Res::Def(DefKind::Ctor(..), _) | Res::SelfCtor(..) = path.res { + if should_ignore_res(path.res) { return Vec::new(); } // We need this comparison because some imports (for std types for example) diff --git a/src/librustdoc/visit_ast.rs b/src/librustdoc/visit_ast.rs index 2f67e12df91..7010abc171f 100644 --- a/src/librustdoc/visit_ast.rs +++ b/src/librustdoc/visit_ast.rs @@ -100,6 +100,11 @@ pub(crate) fn inherits_doc_hidden( false } +#[inline] +pub(crate) fn should_ignore_res(res: Res) -> bool { + matches!(res, Res::Def(DefKind::Ctor(..), _) | Res::SelfCtor(..)) +} + pub(crate) struct RustdocVisitor<'a, 'tcx> { cx: &'a mut core::DocContext<'tcx>, view_item_stack: LocalDefIdSet, @@ -466,7 +471,7 @@ impl<'a, 'tcx> RustdocVisitor<'a, 'tcx> { for &res in &path.res { // Struct and variant constructors and proc macro stubs always show up alongside // their definitions, we've already processed them so just discard these. - if let Res::Def(DefKind::Ctor(..), _) | Res::SelfCtor(..) = res { + if should_ignore_res(res) { continue; } |
