diff options
Diffstat (limited to 'crates/ra_ide_api/src/completion/presentation.rs')
-rw-r--r-- | crates/ra_ide_api/src/completion/presentation.rs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/crates/ra_ide_api/src/completion/presentation.rs b/crates/ra_ide_api/src/completion/presentation.rs index 064d379a4..d405161d6 100644 --- a/crates/ra_ide_api/src/completion/presentation.rs +++ b/crates/ra_ide_api/src/completion/presentation.rs | |||
@@ -57,6 +57,7 @@ impl Completions { | |||
57 | } | 57 | } |
58 | Some(it) => it, | 58 | Some(it) => it, |
59 | }; | 59 | }; |
60 | let mut completion_kind = CompletionKind::Reference; | ||
60 | let (kind, docs) = match def { | 61 | let (kind, docs) = match def { |
61 | Resolution::Def(Module(it)) => (CompletionItemKind::Module, it.docs(ctx.db)), | 62 | Resolution::Def(Module(it)) => (CompletionItemKind::Module, it.docs(ctx.db)), |
62 | Resolution::Def(Function(func)) => { | 63 | Resolution::Def(Function(func)) => { |
@@ -70,6 +71,10 @@ impl Completions { | |||
70 | Resolution::Def(Static(it)) => (CompletionItemKind::Static, it.docs(ctx.db)), | 71 | Resolution::Def(Static(it)) => (CompletionItemKind::Static, it.docs(ctx.db)), |
71 | Resolution::Def(Trait(it)) => (CompletionItemKind::Trait, it.docs(ctx.db)), | 72 | Resolution::Def(Trait(it)) => (CompletionItemKind::Trait, it.docs(ctx.db)), |
72 | Resolution::Def(TypeAlias(it)) => (CompletionItemKind::TypeAlias, it.docs(ctx.db)), | 73 | Resolution::Def(TypeAlias(it)) => (CompletionItemKind::TypeAlias, it.docs(ctx.db)), |
74 | Resolution::Def(BuiltinType(..)) => { | ||
75 | completion_kind = CompletionKind::BuiltinType; | ||
76 | (CompletionItemKind::BuiltinType, None) | ||
77 | } | ||
73 | Resolution::GenericParam(..) => (CompletionItemKind::TypeParam, None), | 78 | Resolution::GenericParam(..) => (CompletionItemKind::TypeParam, None), |
74 | Resolution::LocalBinding(..) => (CompletionItemKind::Binding, None), | 79 | Resolution::LocalBinding(..) => (CompletionItemKind::Binding, None), |
75 | Resolution::SelfType(..) => ( | 80 | Resolution::SelfType(..) => ( |
@@ -77,7 +82,7 @@ impl Completions { | |||
77 | None, | 82 | None, |
78 | ), | 83 | ), |
79 | }; | 84 | }; |
80 | CompletionItem::new(CompletionKind::Reference, ctx.source_range(), local_name) | 85 | CompletionItem::new(completion_kind, ctx.source_range(), local_name) |
81 | .kind(kind) | 86 | .kind(kind) |
82 | .set_documentation(docs) | 87 | .set_documentation(docs) |
83 | .add_to(self) | 88 | .add_to(self) |