rust/crates
bors 265f83031f Auto merge of #14433 - hecatia-elegua:alias-based-completion, r=Veykril
Add doc-alias based completion

Closes #14406.

I adapted the parsing code from the CfgExpr parsing code, maybe there's a better abstraction for both, or attribute parsing in general. It also includes `doc(hidden)`-parsing, which means it could replace the other function.
There are a few tests for parsing.

`process_all_names` changed the most, I added some docs there to explain what happens.

Many call sites just pass an empy vec to `add_path_resolution`'s `doc_aliases`, since either it doesn't make sense to pass anything (e.g. visibility completion) or I don't know where to get them from. Shouldn't really matter, as it will just not show aliases if the vec is empty and we can extend alias completion in these cases later.

I added two tests in `special.rs` for struct name completion (which was the main thing I wanted). I also tried function and field names, but these don't work yet. I want to add those in a follow-up PR.
2023-04-05 13:44:51 +00:00
..
base-db Cleanup crate_graph construction 2023-03-31 14:14:04 +02:00
cfg ⬆️ rust-analyzer 2023-02-13 13:55:14 +02:00
flycheck Bump Cargo.lock 2023-03-25 15:12:39 +01:00
hir Auto merge of #14433 - hecatia-elegua:alias-based-completion, r=Veykril 2023-04-05 13:44:51 +00:00
hir-def Auto merge of #14433 - hecatia-elegua:alias-based-completion, r=Veykril 2023-04-05 13:44:51 +00:00
hir-expand Auto merge of #14407 - Veykril:rename-fix, r=Veykril 2023-03-25 18:35:13 +00:00
hir-ty Auto merge of #14436 - lowr:patch/normalize-assoc-type-in-path-expr, r=HKalbasi 2023-04-05 10:47:47 +00:00
ide Don't append "!" to non-bang macro name 2023-04-02 20:13:34 +09:00
ide-assists fix: insert whitespace between text and pound 2023-04-05 20:33:17 +09:00
ide-completion Auto merge of #14433 - hecatia-elegua:alias-based-completion, r=Veykril 2023-04-05 13:44:51 +00:00
ide-db fix: insert whitespace between text and pound 2023-04-05 20:33:17 +09:00
ide-diagnostics lower adjusts in simple index except the last one 2023-04-01 16:49:32 +03:30
ide-ssr ⬆️ rust-analyzer 2023-03-13 10:42:24 +02:00
intern ⬆️ rust-analyzer 2023-02-13 13:55:14 +02:00
limit ⬆️ rust-analyzer 2023-02-13 13:55:14 +02:00
mbe ⬆️ rust-analyzer 2023-02-20 10:14:12 +02:00
parser feat(syntax): RTN in bounds 2023-04-01 15:26:03 +02:00
paths Canonicalize rust-project.json manifest path 2023-03-27 21:55:02 +02:00
proc-macro-api Remove client side proc-macro version check 2023-03-25 15:43:58 +01:00
proc-macro-srv ⬆️ rust-analyzer 2023-02-13 13:55:14 +02:00
proc-macro-srv-cli ⬆️ rust-analyzer 2023-02-13 13:55:14 +02:00
proc-macro-test ⬆️ rust-analyzer 2023-02-13 13:55:14 +02:00
profile Bump Cargo.lock 2023-03-25 15:12:39 +01:00
project-model Cleanup crate_graph construction 2023-03-31 14:14:04 +02:00
rust-analyzer internal: Refine CrateOrigin variants 2023-03-31 10:36:13 +02:00
sourcegen ⬆️ rust-analyzer 2023-02-13 13:55:14 +02:00
stdx ⬆️ rust-analyzer 2023-02-20 10:14:12 +02:00
syntax feat(syntax): RTN in bounds 2023-04-01 15:26:03 +02:00
test-utils Support overloaded deref MIR lowering 2023-03-17 14:02:55 +03:30
text-edit internal: Coalesce adjacent Indels 2023-03-21 11:48:32 -04:00
toolchain ⬆️ rust-analyzer 2023-03-13 10:42:24 +02:00
tt ⬆️ rust-analyzer 2023-02-13 13:55:14 +02:00
vfs internal: Refine CrateOrigin variants 2023-03-31 10:36:13 +02:00
vfs-notify ⬆️ rust-analyzer 2023-02-13 13:55:14 +02:00