aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_ide_api/src/completion/complete_path.rs
diff options
context:
space:
mode:
Diffstat (limited to 'crates/ra_ide_api/src/completion/complete_path.rs')
-rw-r--r--crates/ra_ide_api/src/completion/complete_path.rs166
1 files changed, 91 insertions, 75 deletions
diff --git a/crates/ra_ide_api/src/completion/complete_path.rs b/crates/ra_ide_api/src/completion/complete_path.rs
index e01197fe4..b5e8bf591 100644
--- a/crates/ra_ide_api/src/completion/complete_path.rs
+++ b/crates/ra_ide_api/src/completion/complete_path.rs
@@ -375,19 +375,22 @@ mod tests {
375 fn foo() { let _ = S::<|> } 375 fn foo() { let _ = S::<|> }
376 " 376 "
377 ), 377 ),
378 @r###"[ 378 @r###"
379 CompletionItem { 379 [
380 label: "m", 380 CompletionItem {
381 source_range: [100; 100), 381 label: "m(…)",
382 delete: [100; 100), 382 source_range: [100; 100),
383 insert: "m()$0", 383 delete: [100; 100),
384 kind: Function, 384 insert: "m()$0",
385 detail: "fn m()", 385 kind: Function,
386 documentation: Documentation( 386 lookup: "m",
387 "An associated method", 387 detail: "fn m()",
388 ), 388 documentation: Documentation(
389 }, 389 "An associated method",
390]"### 390 ),
391 },
392 ]
393 "###
391 ); 394 );
392 } 395 }
393 396
@@ -474,19 +477,22 @@ mod tests {
474 fn foo() { let _ = S::<|> } 477 fn foo() { let _ = S::<|> }
475 " 478 "
476 ), 479 ),
477 @r###"[ 480 @r###"
478 CompletionItem { 481 [
479 label: "m", 482 CompletionItem {
480 source_range: [100; 100), 483 label: "m(…)",
481 delete: [100; 100), 484 source_range: [100; 100),
482 insert: "m()$0", 485 delete: [100; 100),
483 kind: Function, 486 insert: "m()$0",
484 detail: "fn m()", 487 kind: Function,
485 documentation: Documentation( 488 lookup: "m",
486 "An associated method", 489 detail: "fn m()",
487 ), 490 documentation: Documentation(
488 }, 491 "An associated method",
489]"### 492 ),
493 },
494 ]
495 "###
490 ); 496 );
491 } 497 }
492 498
@@ -507,19 +513,22 @@ mod tests {
507 fn foo() { let _ = U::<|> } 513 fn foo() { let _ = U::<|> }
508 " 514 "
509 ), 515 ),
510 @r###"[ 516 @r###"
511 CompletionItem { 517 [
512 label: "m", 518 CompletionItem {
513 source_range: [101; 101), 519 label: "m(…)",
514 delete: [101; 101), 520 source_range: [101; 101),
515 insert: "m()$0", 521 delete: [101; 101),
516 kind: Function, 522 insert: "m()$0",
517 detail: "fn m()", 523 kind: Function,
518 documentation: Documentation( 524 lookup: "m",
519 "An associated method", 525 detail: "fn m()",
520 ), 526 documentation: Documentation(
521 }, 527 "An associated method",
522]"### 528 ),
529 },
530 ]
531 "###
523 ); 532 );
524 } 533 }
525 534
@@ -564,24 +573,28 @@ mod tests {
564 } 573 }
565 " 574 "
566 ), 575 ),
567 @r###"[ 576 @r###"
568 CompletionItem { 577 [
569 label: "bar", 578 CompletionItem {
570 source_range: [185; 185), 579 label: "bar(…)",
571 delete: [185; 185), 580 source_range: [185; 185),
572 insert: "bar()$0", 581 delete: [185; 185),
573 kind: Function, 582 insert: "bar()$0",
574 detail: "fn bar()", 583 kind: Function,
575 }, 584 lookup: "bar",
576 CompletionItem { 585 detail: "fn bar()",
577 label: "foo", 586 },
578 source_range: [185; 185), 587 CompletionItem {
579 delete: [185; 185), 588 label: "foo(…)",
580 insert: "foo()$0", 589 source_range: [185; 185),
581 kind: Function, 590 delete: [185; 185),
582 detail: "fn foo()", 591 insert: "foo()$0",
583 }, 592 kind: Function,
584]"### 593 lookup: "foo",
594 detail: "fn foo()",
595 },
596 ]
597 "###
585 ); 598 );
586 } 599 }
587 600
@@ -600,24 +613,27 @@ mod tests {
600 } 613 }
601 " 614 "
602 ), 615 ),
603 @r###"[ 616 @r###"
604 CompletionItem { 617 [
605 label: "foo!", 618 CompletionItem {
606 source_range: [179; 179), 619 label: "foo!",
607 delete: [179; 179), 620 source_range: [179; 179),
608 insert: "foo!($0)", 621 delete: [179; 179),
609 kind: Macro, 622 insert: "foo!($0)",
610 detail: "#[macro_export]\nmacro_rules! foo", 623 kind: Macro,
611 }, 624 detail: "#[macro_export]\nmacro_rules! foo",
612 CompletionItem { 625 },
613 label: "main", 626 CompletionItem {
614 source_range: [179; 179), 627 label: "main(…)",
615 delete: [179; 179), 628 source_range: [179; 179),
616 insert: "main()$0", 629 delete: [179; 179),
617 kind: Function, 630 insert: "main()$0",
618 detail: "fn main()", 631 kind: Function,
619 }, 632 lookup: "main",
620]"### 633 detail: "fn main()",
634 },
635 ]
636 "###
621 ); 637 );
622 } 638 }
623} 639}