aboutsummaryrefslogtreecommitdiff
path: root/crates/ide_completion/src/render/macro_.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ide_completion/src/render/macro_.rs')
-rw-r--r--crates/ide_completion/src/render/macro_.rs23
1 files changed, 13 insertions, 10 deletions
diff --git a/crates/ide_completion/src/render/macro_.rs b/crates/ide_completion/src/render/macro_.rs
index a6cf3e479..727f5e02e 100644
--- a/crates/ide_completion/src/render/macro_.rs
+++ b/crates/ide_completion/src/render/macro_.rs
@@ -40,24 +40,27 @@ impl<'a> MacroRender<'a> {
40 40
41 fn render(&self, import_to_add: Option<ImportEdit>) -> Option<CompletionItem> { 41 fn render(&self, import_to_add: Option<ImportEdit>) -> Option<CompletionItem> {
42 let mut builder = 42 let mut builder =
43 CompletionItem::new(CompletionKind::Reference, self.ctx.source_range(), &self.label()) 43 CompletionItem::new(CompletionKind::Reference, self.ctx.source_range(), &self.label());
44 .kind(SymbolKind::Macro) 44 builder
45 .set_documentation(self.docs.clone()) 45 .kind(SymbolKind::Macro)
46 .set_deprecated(self.ctx.is_deprecated(self.macro_)) 46 .set_documentation(self.docs.clone())
47 .add_import(import_to_add) 47 .set_deprecated(self.ctx.is_deprecated(self.macro_))
48 .set_detail(self.detail()); 48 .add_import(import_to_add)
49 .set_detail(self.detail());
49 50
50 let needs_bang = self.needs_bang(); 51 let needs_bang = self.needs_bang();
51 builder = match self.ctx.snippet_cap() { 52 match self.ctx.snippet_cap() {
52 Some(cap) if needs_bang => { 53 Some(cap) if needs_bang => {
53 let snippet = self.snippet(); 54 let snippet = self.snippet();
54 let lookup = self.lookup(); 55 let lookup = self.lookup();
55 builder.insert_snippet(cap, snippet).lookup_by(lookup) 56 builder.insert_snippet(cap, snippet).lookup_by(lookup);
57 }
58 None if needs_bang => {
59 builder.insert_text(self.banged_name());
56 } 60 }
57 None if needs_bang => builder.insert_text(self.banged_name()),
58 _ => { 61 _ => {
59 cov_mark::hit!(dont_insert_macro_call_parens_unncessary); 62 cov_mark::hit!(dont_insert_macro_call_parens_unncessary);
60 builder.insert_text(&self.name) 63 builder.insert_text(&self.name);
61 } 64 }
62 }; 65 };
63 66