aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_analysis/src/completion/reference_completion.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ra_analysis/src/completion/reference_completion.rs')
-rw-r--r--crates/ra_analysis/src/completion/reference_completion.rs30
1 files changed, 12 insertions, 18 deletions
diff --git a/crates/ra_analysis/src/completion/reference_completion.rs b/crates/ra_analysis/src/completion/reference_completion.rs
index 23052295c..f9f01a642 100644
--- a/crates/ra_analysis/src/completion/reference_completion.rs
+++ b/crates/ra_analysis/src/completion/reference_completion.rs
@@ -39,25 +39,19 @@ pub(super) fn completions(
39 } 39 }
40 40
41 let module_scope = module.scope(db)?; 41 let module_scope = module.scope(db)?;
42 acc.extend( 42 module_scope
43 module_scope 43 .entries()
44 .entries() 44 .filter(|(_name, res)| {
45 .filter(|(_name, res)| { 45 // Don't expose this item
46 // Don't expose this item 46 match res.import {
47 match res.import { 47 None => true,
48 None => true, 48 Some(import) => {
49 Some(import) => { 49 let range = import.range(db, module.source().file_id());
50 let range = import.range(db, module.source().file_id()); 50 !range.is_subrange(&name_ref.syntax().range())
51 !range.is_subrange(&name_ref.syntax().range())
52 }
53 } 51 }
54 }) 52 }
55 .map(|(name, _res)| CompletionItem { 53 })
56 label: name.to_string(), 54 .for_each(|(name, _res)| CompletionItem::new(name.to_string()).add_to(acc));
57 lookup: None,
58 snippet: None,
59 }),
60 );
61 } 55 }
62 NameRefKind::Path(path) => complete_path(acc, db, module, path)?, 56 NameRefKind::Path(path) => complete_path(acc, db, module, path)?,
63 NameRefKind::BareIdentInMod => { 57 NameRefKind::BareIdentInMod => {