diff options
| author | Camille GILLOT <gillot.camille@gmail.com> | 2022-02-14 13:20:47 +0100 |
|---|---|---|
| committer | Camille GILLOT <gillot.camille@gmail.com> | 2022-04-23 23:03:18 +0200 |
| commit | 88de3e52e40e85fcfff579efa17be64432a61544 (patch) | |
| tree | 44039bb10af0cb3ee3ef0fd477d636ac98dd5bc6 | |
| parent | 423a712a16233277e22fec707d9aca8a0a83aa2d (diff) | |
| download | rust-88de3e52e40e85fcfff579efa17be64432a61544.tar.gz rust-88de3e52e40e85fcfff579efa17be64432a61544.zip | |
Make clippy inspector more precise.
| -rw-r--r-- | src/tools/clippy/clippy_lints/src/utils/inspector.rs | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/tools/clippy/clippy_lints/src/utils/inspector.rs b/src/tools/clippy/clippy_lints/src/utils/inspector.rs index e4abfd07866..37b114a0cfb 100644 --- a/src/tools/clippy/clippy_lints/src/utils/inspector.rs +++ b/src/tools/clippy/clippy_lints/src/utils/inspector.rs @@ -48,7 +48,13 @@ impl<'tcx> LateLintPass<'tcx> for DeepCodeInspector { println!("impl item `{}`", item.ident.name); match cx.tcx.visibility(item.def_id) { ty::Visibility::Public => println!("public"), - ty::Visibility::Restricted(def_id) => println!("visible in module `{}`", cx.tcx.def_path_str(def_id)), + ty::Visibility::Restricted(def_id) => { + if def_id.is_top_level_module() { + println!("visible crate wide") + } else { + println!("visible in module `{}`", cx.tcx.def_path_str(def_id)) + } + }, ty::Visibility::Invisible => println!("invisible"), } match item.kind { @@ -359,7 +365,13 @@ fn print_item(cx: &LateContext<'_>, item: &hir::Item<'_>) { println!("item `{}`", item.ident.name); match cx.tcx.visibility(item.def_id) { ty::Visibility::Public => println!("public"), - ty::Visibility::Restricted(def_id) => println!("visible in module `{}`", cx.tcx.def_path_str(def_id)), + ty::Visibility::Restricted(def_id) => { + if def_id.is_top_level_module() { + println!("visible crate wide") + } else { + println!("visible in module `{}`", cx.tcx.def_path_str(def_id)) + } + }, ty::Visibility::Invisible => println!("invisible"), } match item.kind { |
