From 5d1a63c6951d27a9f900d661e38735cc30bc8258 Mon Sep 17 00:00:00 2001 From: gfreezy Date: Mon, 21 Jan 2019 13:19:51 +0800 Subject: postfix completion --- crates/ra_ide_api/src/completion/completion_item.rs | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'crates/ra_ide_api/src/completion/completion_item.rs') diff --git a/crates/ra_ide_api/src/completion/completion_item.rs b/crates/ra_ide_api/src/completion/completion_item.rs index f46d9e581..c892ad846 100644 --- a/crates/ra_ide_api/src/completion/completion_item.rs +++ b/crates/ra_ide_api/src/completion/completion_item.rs @@ -18,7 +18,12 @@ pub struct CompletionItem { lookup: Option, insert_text: Option, insert_text_format: InsertTextFormat, + /// Where completion occurs. `source_range` must contain the completion offset. + /// `insert_text` should start with what `source_range` points to, or VSCode + /// will filter out the completion silently. source_range: TextRange, + /// Additional text edit, ranges in `text_edit` must never intersect with `source_range`. + /// Or VSCode will drop it silently. text_edit: Option, } @@ -49,6 +54,7 @@ pub(crate) enum CompletionKind { /// "Secret sauce" completions. Magic, Snippet, + Postfix, } #[derive(Debug, PartialEq, Eq, Copy, Clone)] -- cgit v1.2.3