aboutsummaryrefslogtreecommitdiff
path: root/crates/ide_completion/src/completions/postfix.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ide_completion/src/completions/postfix.rs')
-rw-r--r--crates/ide_completion/src/completions/postfix.rs21
1 files changed, 17 insertions, 4 deletions
diff --git a/crates/ide_completion/src/completions/postfix.rs b/crates/ide_completion/src/completions/postfix.rs
index 9c34ed0b6..ac69b720a 100644
--- a/crates/ide_completion/src/completions/postfix.rs
+++ b/crates/ide_completion/src/completions/postfix.rs
@@ -187,6 +187,16 @@ pub(crate) fn complete_postfix(acc: &mut Completions, ctx: &CompletionContext) {
187 ctx, 187 ctx,
188 cap, 188 cap,
189 &dot_receiver, 189 &dot_receiver,
190 "err",
191 "Err(expr)",
192 &format!("Err({})", receiver_text),
193 )
194 .add_to(acc);
195
196 postfix_snippet(
197 ctx,
198 cap,
199 &dot_receiver,
190 "some", 200 "some",
191 "Some(expr)", 201 "Some(expr)",
192 &format!("Some({})", receiver_text), 202 &format!("Some({})", receiver_text),
@@ -287,10 +297,9 @@ fn postfix_snippet(
287 let delete_range = TextRange::new(receiver_range.start(), ctx.source_range().end()); 297 let delete_range = TextRange::new(receiver_range.start(), ctx.source_range().end());
288 TextEdit::replace(delete_range, snippet.to_string()) 298 TextEdit::replace(delete_range, snippet.to_string())
289 }; 299 };
290 CompletionItem::new(CompletionKind::Postfix, ctx.source_range(), label) 300 let mut item = CompletionItem::new(CompletionKind::Postfix, ctx.source_range(), label);
291 .detail(detail) 301 item.detail(detail).kind(CompletionItemKind::Snippet).snippet_edit(cap, edit);
292 .kind(CompletionItemKind::Snippet) 302 item
293 .snippet_edit(cap, edit)
294} 303}
295 304
296#[cfg(test)] 305#[cfg(test)]
@@ -325,6 +334,7 @@ fn main() {
325 sn match match expr {} 334 sn match match expr {}
326 sn box Box::new(expr) 335 sn box Box::new(expr)
327 sn ok Ok(expr) 336 sn ok Ok(expr)
337 sn err Err(expr)
328 sn some Some(expr) 338 sn some Some(expr)
329 sn dbg dbg!(expr) 339 sn dbg dbg!(expr)
330 sn dbgr dbg!(&expr) 340 sn dbgr dbg!(&expr)
@@ -357,6 +367,7 @@ fn main() {
357 sn match match expr {} 367 sn match match expr {}
358 sn box Box::new(expr) 368 sn box Box::new(expr)
359 sn ok Ok(expr) 369 sn ok Ok(expr)
370 sn err Err(expr)
360 sn some Some(expr) 371 sn some Some(expr)
361 sn dbg dbg!(expr) 372 sn dbg dbg!(expr)
362 sn dbgr dbg!(&expr) 373 sn dbgr dbg!(&expr)
@@ -380,6 +391,7 @@ fn main() {
380 sn match match expr {} 391 sn match match expr {}
381 sn box Box::new(expr) 392 sn box Box::new(expr)
382 sn ok Ok(expr) 393 sn ok Ok(expr)
394 sn err Err(expr)
383 sn some Some(expr) 395 sn some Some(expr)
384 sn dbg dbg!(expr) 396 sn dbg dbg!(expr)
385 sn dbgr dbg!(&expr) 397 sn dbgr dbg!(&expr)
@@ -408,6 +420,7 @@ fn main() {
408 sn match match expr {} 420 sn match match expr {}
409 sn box Box::new(expr) 421 sn box Box::new(expr)
410 sn ok Ok(expr) 422 sn ok Ok(expr)
423 sn err Err(expr)
411 sn some Some(expr) 424 sn some Some(expr)
412 sn dbg dbg!(expr) 425 sn dbg dbg!(expr)
413 sn dbgr dbg!(&expr) 426 sn dbgr dbg!(&expr)