rust-analyzer/crates
bors 510a8ffff3 Auto merge of #17736 - hyf0:hyf_09234908234, r=Veykril
feat(ide-completion): explictly show `async` keyword on `impl trait` methods

OLD:

<img width="676" alt="image" src="https://github.com/user-attachments/assets/f6fa626f-6b6d-4c22-af27-b0755e7a6bf8">

Now:

<img width="684" alt="image" src="https://github.com/user-attachments/assets/efbaac0e-c805-4dd2-859d-3e44b2886dbb">

---

This is an preparation for https://github.com/rust-lang/rust-analyzer/issues/17719.

```rust
use std::future::Future;

trait DesugaredAsyncTrait {
    fn foo(&self) -> impl Future<Output = usize> + Send;
    fn bar(&self) -> impl Future<Output = usize> + Send;
}

struct Foo;

impl DesugaredAsyncTrait for Foo {
    fn foo(&self) -> impl Future<Output = usize> + Send {
        async { 1 }
    }

    //
    async fn bar(&self) -> usize {
        1
    }
}

fn main() {
    let fut = Foo.bar();
    fn _assert_send<T: Send>(_: T) {}
    _assert_send(fut);
}
```

If we don't distinguish `async` or not. It would be confusing to generate sugared version `async fn foo ....` and original form `fn foo`  for `async fn in trait` that is defined in desugar form.
2024-07-29 12:55:53 +00:00
..
base-db Make LRU opt-in 2024-07-19 18:38:08 +02:00
cfg Make CfgExpr slimmer 2024-07-21 14:50:44 +02:00
flycheck 17470 - run test explorer tests at the package level and add missing extra_test_bin_args settings 2024-07-28 07:43:07 +01:00
hir Fix incorrect handling of cfg'd varargs 2024-07-25 11:02:19 +02:00
hir-def fix: let glob imports override other globs' visibility 2024-07-27 00:10:53 -03:00
hir-expand fix: Fix includes not working with expr fragment inputs 2024-07-26 10:12:06 +02:00
hir-ty Fix for #17497 - Invalid RA diagnostic error: expected 2 arguments, found 1 2024-07-28 00:32:37 +08:00
ide Fix for #17497 - Invalid RA diagnostic error: expected 2 arguments, found 1 2024-07-28 00:32:37 +08:00
ide-assists flip the naming of the doc comment to comment assist 2024-07-28 00:48:08 +02:00
ide-completion Add test in ide-completion/src/tests/item_list.rs 2024-07-29 20:40:51 +08:00
ide-db chore: update codegens 2024-07-23 22:36:46 +01:00
ide-diagnostics Revert "Fix error message" 2024-07-29 20:36:03 +08:00
ide-ssr Parse try as a keyword only in edition 2018 and up 2024-07-19 15:43:20 +02:00
intern Fix incorrect handling of cfg'd varargs 2024-07-25 11:02:19 +02:00
limit Remove inline rust_2018_idioms, unused_lifetimes lint warn, Cargo.toml already enforces this 2024-06-30 15:23:54 +02:00
load-cargo minor changes 2024-07-23 15:50:12 +02:00
mbe Parse contextual dyn keyword properly in edition 2015 2024-07-19 20:20:30 +02:00
parser fix: move use parsing to outer match arm 2024-07-23 22:36:46 +01:00
paths Remove inline rust_2018_idioms, unused_lifetimes lint warn, Cargo.toml already enforces this 2024-06-30 15:23:54 +02:00
proc-macro-api Encode edition within FileId in the hir layer 2024-07-18 08:49:10 +02:00
proc-macro-srv Encode edition within FileId in the hir layer 2024-07-18 08:49:10 +02:00
proc-macro-srv-cli Abstract proc-macro-srv protocol format 2024-06-30 16:56:30 +02:00
profile Fix stop_watch on linux 2024-07-07 08:40:41 +02:00
project-model fix: Support new cargo config get env format 2024-07-25 12:28:31 +02:00
rust-analyzer 17470 - run test explorer tests at the package level and add missing extra_test_bin_args settings 2024-07-28 07:43:07 +01:00
salsa Fix and enable unsafe_op_in_unsafe_fn 2024-07-25 08:41:30 +03:00
span Remove Params and Fields from AstIdMap 2024-07-25 10:22:05 +02:00
stdx Merge from rust-lang/rust 2024-07-28 17:19:33 +03:00
syntax Auto merge of #17676 - winstxnhdw:precise-capturing, r=Veykril 2024-07-25 11:10:56 +00:00
test-fixture Prefer standard library paths over shorter extern deps re-exports 2024-07-21 09:14:17 +02:00
test-utils fix: Allow flyimport to import primitive shadowing modules 2024-07-21 13:26:19 +02:00
text-edit Remove inline rust_2018_idioms, unused_lifetimes lint warn, Cargo.toml already enforces this 2024-06-30 15:23:54 +02:00
toolchain Remove inline rust_2018_idioms, unused_lifetimes lint warn, Cargo.toml already enforces this 2024-06-30 15:23:54 +02:00
tt Switch token trees to use Symbols 2024-07-16 10:11:59 +02:00
vfs Encode edition within FileId in the hir layer 2024-07-18 08:49:10 +02:00
vfs-notify Remove inline rust_2018_idioms, unused_lifetimes lint warn, Cargo.toml already enforces this 2024-06-30 15:23:54 +02:00