diff options
| author | hecatia-elegua <108802164+hecatia-elegua@users.noreply.github.com> | 2023-04-05 19:35:21 +0200 |
|---|---|---|
| committer | hecatia-elegua <108802164+hecatia-elegua@users.noreply.github.com> | 2023-04-05 19:35:21 +0200 |
| commit | f87f468dbdba374b5e2b04b832ab99dbd74dc288 (patch) | |
| tree | bde454c2f2698b8ea743d89e81c2b8591fbad824 | |
| parent | 410acd7188a5efb99f8629c7ff0630ce4935350a (diff) | |
| download | rust-f87f468dbdba374b5e2b04b832ab99dbd74dc288.tar.gz rust-f87f468dbdba374b5e2b04b832ab99dbd74dc288.zip | |
Add doc(alias)-based function name completion
| -rw-r--r-- | crates/ide-completion/src/render/function.rs | 2 | ||||
| -rw-r--r-- | crates/ide-completion/src/tests/special.rs | 45 |
2 files changed, 47 insertions, 0 deletions
diff --git a/crates/ide-completion/src/render/function.rs b/crates/ide-completion/src/render/function.rs index 197592e78ce..bfcd23280ce 100644 --- a/crates/ide-completion/src/render/function.rs +++ b/crates/ide-completion/src/render/function.rs @@ -147,6 +147,8 @@ fn render( } } } + + item.doc_aliases(ctx.doc_aliases); item } diff --git a/crates/ide-completion/src/tests/special.rs b/crates/ide-completion/src/tests/special.rs index 5f53e5b6a9b..8d9bd4ba1a0 100644 --- a/crates/ide-completion/src/tests/special.rs +++ b/crates/ide-completion/src/tests/special.rs @@ -1105,3 +1105,48 @@ fn here_we_go() { "#]], ); } + +#[test] +fn completes_fn_name_via_doc_alias_in_fn_body() { + check( + r#" +#[doc(alias = "qux")] +fn foo() {} +fn bar() { qu$0 } +"#, + expect![[r#" + fn bar() fn() + fn foo() (alias qux) fn() + bt u32 + kw const + kw crate:: + kw enum + kw extern + kw false + kw fn + kw for + kw if + kw if let + kw impl + kw let + kw loop + kw match + kw mod + kw return + kw self:: + kw static + kw struct + kw trait + kw true + kw type + kw union + kw unsafe + kw use + kw while + kw while let + sn macro_rules + sn pd + sn ppd + "#]], + ); +} |
