Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/ide_completion/src/completions/postfix.rs')
-rw-r--r--crates/ide_completion/src/completions/postfix.rs21
1 files changed, 12 insertions, 9 deletions
diff --git a/crates/ide_completion/src/completions/postfix.rs b/crates/ide_completion/src/completions/postfix.rs
index ead957a3f1..302694ea7c 100644
--- a/crates/ide_completion/src/completions/postfix.rs
+++ b/crates/ide_completion/src/completions/postfix.rs
@@ -12,9 +12,11 @@ use syntax::{
use text_edit::TextEdit;
use crate::{
- completions::postfix::format_like::add_format_like_completions, context::CompletionContext,
- item::Builder, patterns::ImmediateLocation, CompletionItem, CompletionItemKind,
- CompletionRelevance, Completions, SnippetScope,
+ completions::postfix::format_like::add_format_like_completions,
+ context::CompletionContext,
+ item::{Builder, CompletionRelevancePostfixMatch},
+ patterns::ImmediateLocation,
+ CompletionItem, CompletionItemKind, CompletionRelevance, Completions, SnippetScope,
};
pub(crate) fn complete_postfix(acc: &mut Completions, ctx: &CompletionContext) {
@@ -240,12 +242,13 @@ fn build_postfix_snippet_builder<'ctx>(
let mut item =
CompletionItem::new(CompletionItemKind::Snippet, ctx.source_range(), label);
item.detail(detail).snippet_edit(cap, edit);
- if ctx.original_token.text() == label {
- let relevance =
- CompletionRelevance { exact_postfix_snippet_match: true, ..Default::default() };
- item.set_relevance(relevance);
- }
-
+ let postfix_match = if ctx.original_token.text() == label {
+ Some(CompletionRelevancePostfixMatch::Exact)
+ } else {
+ Some(CompletionRelevancePostfixMatch::NonExact)
+ };
+ let relevance = CompletionRelevance { postfix_match, ..Default::default() };
+ item.set_relevance(relevance);
item
}
}