Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/ide-completion/src/completions/flyimport.rs')
-rw-r--r--crates/ide-completion/src/completions/flyimport.rs12
1 files changed, 7 insertions, 5 deletions
diff --git a/crates/ide-completion/src/completions/flyimport.rs b/crates/ide-completion/src/completions/flyimport.rs
index 39c1b7f7b3..0961021e48 100644
--- a/crates/ide-completion/src/completions/flyimport.rs
+++ b/crates/ide-completion/src/completions/flyimport.rs
@@ -13,10 +13,9 @@ use crate::{
TypeLocation,
},
render::{render_resolution_with_import, render_resolution_with_import_pat, RenderContext},
+ Completions,
};
-use super::Completions;
-
// Feature: Completion With Autoimport
//
// When completing names in the current scope, proposes additional imports from other modules or crates,
@@ -377,9 +376,12 @@ fn import_assets_for_path(
&ctx.sema,
ctx.token.parent()?,
)?;
- if fuzzy_name_length < 3 {
- cov_mark::hit!(flyimport_exact_on_short_path);
- assets_for_path.path_fuzzy_name_to_exact(false);
+ if fuzzy_name_length == 0 {
+ // nothing matches the empty string exactly, but we still compute assoc items in this case
+ assets_for_path.path_fuzzy_name_to_exact();
+ } else if fuzzy_name_length < 3 {
+ cov_mark::hit!(flyimport_prefix_on_short_path);
+ assets_for_path.path_fuzzy_name_to_prefix();
}
Some(assets_for_path)
}