aboutsummaryrefslogtreecommitdiff
path: root/crates/completion/src/completions/postfix.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/completion/src/completions/postfix.rs')
-rw-r--r--crates/completion/src/completions/postfix.rs48
1 files changed, 20 insertions, 28 deletions
diff --git a/crates/completion/src/completions/postfix.rs b/crates/completion/src/completions/postfix.rs
index 4888f518a..87f0c0b2a 100644
--- a/crates/completion/src/completions/postfix.rs
+++ b/crates/completion/src/completions/postfix.rs
@@ -1,4 +1,4 @@
1//! Postfix completions, like `Ok(10).ifl<|>` => `if let Ok() = Ok(10) { <|> }`. 1//! Postfix completions, like `Ok(10).ifl$0` => `if let Ok() = Ok(10) { $0 }`.
2 2
3mod format_like; 3mod format_like;
4 4
@@ -310,7 +310,7 @@ mod tests {
310 r#" 310 r#"
311fn main() { 311fn main() {
312 let bar = true; 312 let bar = true;
313 bar.<|> 313 bar.$0
314} 314}
315"#, 315"#,
316 expect![[r#" 316 expect![[r#"
@@ -342,7 +342,7 @@ fn foo(elt: bool) -> bool {
342 342
343fn main() { 343fn main() {
344 let bar = true; 344 let bar = true;
345 foo(bar.<|>) 345 foo(bar.$0)
346} 346}
347"#, 347"#,
348 expect![[r#" 348 expect![[r#"
@@ -368,7 +368,7 @@ fn main() {
368 r#" 368 r#"
369fn main() { 369fn main() {
370 let bar: u8 = 12; 370 let bar: u8 = 12;
371 bar.<|> 371 bar.$0
372} 372}
373"#, 373"#,
374 expect![[r#" 374 expect![[r#"
@@ -392,7 +392,7 @@ fn main() {
392 check( 392 check(
393 r#" 393 r#"
394fn main() { 394fn main() {
395 baz.l<|> 395 baz.l$0
396 res 396 res
397} 397}
398"#, 398"#,
@@ -424,7 +424,7 @@ enum Option<T> { Some(T), None }
424 424
425fn main() { 425fn main() {
426 let bar = Option::Some(true); 426 let bar = Option::Some(true);
427 bar.<|> 427 bar.$0
428} 428}
429"#, 429"#,
430 r#" 430 r#"
@@ -449,7 +449,7 @@ enum Result<T, E> { Ok(T), Err(E) }
449 449
450fn main() { 450fn main() {
451 let bar = Result::Ok(true); 451 let bar = Result::Ok(true);
452 bar.<|> 452 bar.$0
453} 453}
454"#, 454"#,
455 r#" 455 r#"
@@ -468,7 +468,7 @@ fn main() {
468 468
469 #[test] 469 #[test]
470 fn postfix_completion_works_for_ambiguous_float_literal() { 470 fn postfix_completion_works_for_ambiguous_float_literal() {
471 check_edit("refm", r#"fn main() { 42.<|> }"#, r#"fn main() { &mut 42 }"#) 471 check_edit("refm", r#"fn main() { 42.$0 }"#, r#"fn main() { &mut 42 }"#)
472 } 472 }
473 473
474 #[test] 474 #[test]
@@ -479,7 +479,7 @@ fn main() {
479macro_rules! m { ($e:expr) => { $e } } 479macro_rules! m { ($e:expr) => { $e } }
480fn main() { 480fn main() {
481 let bar: u8 = 12; 481 let bar: u8 = 12;
482 m!(bar.d<|>) 482 m!(bar.d$0)
483} 483}
484"#, 484"#,
485 r#" 485 r#"
@@ -494,55 +494,47 @@ fn main() {
494 494
495 #[test] 495 #[test]
496 fn postfix_completion_for_references() { 496 fn postfix_completion_for_references() {
497 check_edit("dbg", r#"fn main() { &&42.<|> }"#, r#"fn main() { dbg!(&&42) }"#); 497 check_edit("dbg", r#"fn main() { &&42.$0 }"#, r#"fn main() { dbg!(&&42) }"#);
498 check_edit("refm", r#"fn main() { &&42.<|> }"#, r#"fn main() { &&&mut 42 }"#); 498 check_edit("refm", r#"fn main() { &&42.$0 }"#, r#"fn main() { &&&mut 42 }"#);
499 } 499 }
500 500
501 #[test] 501 #[test]
502 fn postfix_completion_for_format_like_strings() { 502 fn postfix_completion_for_format_like_strings() {
503 check_edit( 503 check_edit(
504 "format", 504 "format",
505 r#"fn main() { "{some_var:?}".<|> }"#, 505 r#"fn main() { "{some_var:?}".$0 }"#,
506 r#"fn main() { format!("{:?}", some_var) }"#, 506 r#"fn main() { format!("{:?}", some_var) }"#,
507 ); 507 );
508 check_edit( 508 check_edit(
509 "panic", 509 "panic",
510 r#"fn main() { "Panic with {a}".<|> }"#, 510 r#"fn main() { "Panic with {a}".$0 }"#,
511 r#"fn main() { panic!("Panic with {}", a) }"#, 511 r#"fn main() { panic!("Panic with {}", a) }"#,
512 ); 512 );
513 check_edit( 513 check_edit(
514 "println", 514 "println",
515 r#"fn main() { "{ 2+2 } { SomeStruct { val: 1, other: 32 } :?}".<|> }"#, 515 r#"fn main() { "{ 2+2 } { SomeStruct { val: 1, other: 32 } :?}".$0 }"#,
516 r#"fn main() { println!("{} {:?}", 2+2, SomeStruct { val: 1, other: 32 }) }"#, 516 r#"fn main() { println!("{} {:?}", 2+2, SomeStruct { val: 1, other: 32 }) }"#,
517 ); 517 );
518 check_edit( 518 check_edit(
519 "loge", 519 "loge",
520 r#"fn main() { "{2+2}".<|> }"#, 520 r#"fn main() { "{2+2}".$0 }"#,
521 r#"fn main() { log::error!("{}", 2+2) }"#, 521 r#"fn main() { log::error!("{}", 2+2) }"#,
522 ); 522 );
523 check_edit( 523 check_edit(
524 "logt", 524 "logt",
525 r#"fn main() { "{2+2}".<|> }"#, 525 r#"fn main() { "{2+2}".$0 }"#,
526 r#"fn main() { log::trace!("{}", 2+2) }"#, 526 r#"fn main() { log::trace!("{}", 2+2) }"#,
527 ); 527 );
528 check_edit( 528 check_edit(
529 "logd", 529 "logd",
530 r#"fn main() { "{2+2}".<|> }"#, 530 r#"fn main() { "{2+2}".$0 }"#,
531 r#"fn main() { log::debug!("{}", 2+2) }"#, 531 r#"fn main() { log::debug!("{}", 2+2) }"#,
532 ); 532 );
533 check_edit( 533 check_edit("logi", r#"fn main() { "{2+2}".$0 }"#, r#"fn main() { log::info!("{}", 2+2) }"#);
534 "logi", 534 check_edit("logw", r#"fn main() { "{2+2}".$0 }"#, r#"fn main() { log::warn!("{}", 2+2) }"#);
535 r#"fn main() { "{2+2}".<|> }"#,
536 r#"fn main() { log::info!("{}", 2+2) }"#,
537 );
538 check_edit(
539 "logw",
540 r#"fn main() { "{2+2}".<|> }"#,
541 r#"fn main() { log::warn!("{}", 2+2) }"#,
542 );
543 check_edit( 535 check_edit(
544 "loge", 536 "loge",
545 r#"fn main() { "{2+2}".<|> }"#, 537 r#"fn main() { "{2+2}".$0 }"#,
546 r#"fn main() { log::error!("{}", 2+2) }"#, 538 r#"fn main() { log::error!("{}", 2+2) }"#,
547 ); 539 );
548 } 540 }