aboutsummaryrefslogtreecommitdiff
path: root/crates/completion/src/render/macro_.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/completion/src/render/macro_.rs')
-rw-r--r--crates/completion/src/render/macro_.rs16
1 files changed, 6 insertions, 10 deletions
diff --git a/crates/completion/src/render/macro_.rs b/crates/completion/src/render/macro_.rs
index 91055a296..b4ab32c6e 100644
--- a/crates/completion/src/render/macro_.rs
+++ b/crates/completion/src/render/macro_.rs
@@ -1,23 +1,22 @@
1//! Renderer for macro invocations. 1//! Renderer for macro invocations.
2 2
3use assists::utils::{ImportScope, MergeBehaviour}; 3use hir::{Documentation, HasSource};
4use hir::{Documentation, HasSource, ModPath};
5use syntax::display::macro_label; 4use syntax::display::macro_label;
6use test_utils::mark; 5use test_utils::mark;
7 6
8use crate::{ 7use crate::{
9 item::{CompletionItem, CompletionItemKind, CompletionKind}, 8 item::{CompletionItem, CompletionItemKind, CompletionKind, ImportToAdd},
10 render::RenderContext, 9 render::RenderContext,
11}; 10};
12 11
13pub(crate) fn render_macro<'a>( 12pub(crate) fn render_macro<'a>(
14 ctx: RenderContext<'a>, 13 ctx: RenderContext<'a>,
15 import_data: Option<(ModPath, ImportScope, Option<MergeBehaviour>)>, 14 import_to_add: Option<ImportToAdd>,
16 name: String, 15 name: String,
17 macro_: hir::MacroDef, 16 macro_: hir::MacroDef,
18) -> Option<CompletionItem> { 17) -> Option<CompletionItem> {
19 let _p = profile::span("render_macro"); 18 let _p = profile::span("render_macro");
20 MacroRender::new(ctx, name, macro_).render(import_data) 19 MacroRender::new(ctx, name, macro_).render(import_to_add)
21} 20}
22 21
23#[derive(Debug)] 22#[derive(Debug)]
@@ -39,10 +38,7 @@ impl<'a> MacroRender<'a> {
39 MacroRender { ctx, name, macro_, docs, bra, ket } 38 MacroRender { ctx, name, macro_, docs, bra, ket }
40 } 39 }
41 40
42 fn render( 41 fn render(&self, import_to_add: Option<ImportToAdd>) -> Option<CompletionItem> {
43 &self,
44 import_data: Option<(ModPath, ImportScope, Option<MergeBehaviour>)>,
45 ) -> Option<CompletionItem> {
46 // FIXME: Currently proc-macro do not have ast-node, 42 // FIXME: Currently proc-macro do not have ast-node,
47 // such that it does not have source 43 // such that it does not have source
48 if self.macro_.is_proc_macro() { 44 if self.macro_.is_proc_macro() {
@@ -54,7 +50,7 @@ impl<'a> MacroRender<'a> {
54 .kind(CompletionItemKind::Macro) 50 .kind(CompletionItemKind::Macro)
55 .set_documentation(self.docs.clone()) 51 .set_documentation(self.docs.clone())
56 .set_deprecated(self.ctx.is_deprecated(self.macro_)) 52 .set_deprecated(self.ctx.is_deprecated(self.macro_))
57 .import_data(import_data) 53 .add_import(import_to_add)
58 .detail(self.detail()); 54 .detail(self.detail());
59 55
60 let needs_bang = self.needs_bang(); 56 let needs_bang = self.needs_bang();