Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/ide-completion/src/completions/field.rs')
| -rw-r--r-- | crates/ide-completion/src/completions/field.rs | 24 |
1 files changed, 2 insertions, 22 deletions
diff --git a/crates/ide-completion/src/completions/field.rs b/crates/ide-completion/src/completions/field.rs index d81e48cbab..1739527917 100644 --- a/crates/ide-completion/src/completions/field.rs +++ b/crates/ide-completion/src/completions/field.rs @@ -2,7 +2,7 @@ use crate::{ context::{IdentContext, NameContext, NameKind, NameRefContext, PathCompletionCtx, PathKind}, - CompletionContext, CompletionItem, CompletionItemKind, Completions, + CompletionContext, Completions, }; pub(crate) fn complete_field_list(acc: &mut Completions, ctx: &CompletionContext) { @@ -22,7 +22,7 @@ pub(crate) fn complete_field_list(acc: &mut Completions, ctx: &CompletionContext .. }) => { if ctx.qualifier_ctx.vis_node.is_none() { - let mut add_keyword = |kw, snippet| add_keyword(acc, ctx, kw, snippet); + let mut add_keyword = |kw, snippet| acc.add_keyword_snippet(ctx, kw, snippet); add_keyword("pub(crate)", "pub(crate)"); add_keyword("pub(super)", "pub(super)"); add_keyword("pub", "pub"); @@ -31,23 +31,3 @@ pub(crate) fn complete_field_list(acc: &mut Completions, ctx: &CompletionContext _ => return, } } - -pub(super) fn add_keyword(acc: &mut Completions, ctx: &CompletionContext, kw: &str, snippet: &str) { - let mut item = CompletionItem::new(CompletionItemKind::Keyword, ctx.source_range(), kw); - - match ctx.config.snippet_cap { - Some(cap) => { - if snippet.ends_with('}') && ctx.incomplete_let { - // complete block expression snippets with a trailing semicolon, if inside an incomplete let - cov_mark::hit!(let_semi); - item.insert_snippet(cap, format!("{};", snippet)); - } else { - item.insert_snippet(cap, snippet); - } - } - None => { - item.insert_text(if snippet.contains('$') { kw } else { snippet }); - } - }; - item.add_to(acc); -} |