Unnamed repository; edit this file 'description' to name the repository.
check glob
Signed-off-by: Hayashi Mikihiro <[email protected]>
Hayashi Mikihiro 12 months ago
parent bf13549 · commit 55dd211
-rw-r--r--crates/ide-assists/src/handlers/remove_unused_imports.rs43
1 files changed, 22 insertions, 21 deletions
diff --git a/crates/ide-assists/src/handlers/remove_unused_imports.rs b/crates/ide-assists/src/handlers/remove_unused_imports.rs
index dff9a660cf..994e7c446c 100644
--- a/crates/ide-assists/src/handlers/remove_unused_imports.rs
+++ b/crates/ide-assists/src/handlers/remove_unused_imports.rs
@@ -86,28 +86,29 @@ pub(crate) fn remove_unused_imports(acc: &mut Assists, ctx: &AssistContext<'_>)
return None;
}
};
- match res {
- PathResolutionPerNs { type_ns: Some(type_ns), .. } if u.star_token().is_some() => {
- // Check if any of the children of this module are used
- let def_mod = match type_ns {
- PathResolution::Def(ModuleDef::Module(module)) => module,
- _ => return None,
- };
-
- if !def_mod
- .scope(ctx.db(), Some(use_module))
- .iter()
- .filter_map(|(_, x)| match x {
- hir::ScopeDef::ModuleDef(d) => Some(Definition::from(*d)),
- _ => None,
- })
- .any(|d| used_once_in_scope(ctx, d, u.rename(), scope))
- {
- Some(u)
- } else {
- None
- }
+
+ if u.star_token().is_some() {
+ // Check if any of the children of this module are used
+ let def_mod = match res.type_ns {
+ Some(PathResolution::Def(ModuleDef::Module(module))) => module,
+ _ => return None,
+ };
+
+ if !def_mod
+ .scope(ctx.db(), Some(use_module))
+ .iter()
+ .filter_map(|(_, x)| match x {
+ hir::ScopeDef::ModuleDef(d) => Some(Definition::from(*d)),
+ _ => None,
+ })
+ .any(|d| used_once_in_scope(ctx, d, u.rename(), scope))
+ {
+ return Some(u);
+ } else {
+ return None;
}
+ }
+ match res {
PathResolutionPerNs {
type_ns: Some(PathResolution::Def(ModuleDef::Trait(ref t))),
value_ns,