diff options
| author | bors <bors@rust-lang.org> | 2022-06-05 18:29:59 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2022-06-05 18:29:59 +0000 |
| commit | ad6810e90bf89a4ef0ae21349d077050bc2a4fa2 (patch) | |
| tree | de347859e50d214f39f36278d95ceae01c70a562 | |
| parent | 995a17fbd9f7cdedfdafec946b1d9e44eff448b4 (diff) | |
| parent | 0be31d945e380471c0183884f57af85b812d6497 (diff) | |
| download | rust-ad6810e90bf89a4ef0ae21349d077050bc2a4fa2.tar.gz rust-ad6810e90bf89a4ef0ae21349d077050bc2a4fa2.zip | |
Auto merge of #12475 - Veykril:trait-impl-completion, r=Veykril
fix: Fix trait impl completions using wrong insert position Fixes https://github.com/rust-lang/rust-analyzer/issues/12474
| -rw-r--r-- | crates/ide-completion/src/completions/item_list/trait_impl.rs | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/crates/ide-completion/src/completions/item_list/trait_impl.rs b/crates/ide-completion/src/completions/item_list/trait_impl.rs index 8a2bbae73f4..56f656f4794 100644 --- a/crates/ide-completion/src/completions/item_list/trait_impl.rs +++ b/crates/ide-completion/src/completions/item_list/trait_impl.rs @@ -118,7 +118,7 @@ fn completion_match(ctx: &CompletionContext) -> Option<(ImplCompletionKind, Text ImplCompletionKind::All, match nameref { Some(name) => name.syntax().text_range(), - None => TextRange::empty(ctx.position.offset), + None => ctx.source_range(), }, ctx.impl_def.clone()?, )), @@ -693,6 +693,27 @@ impl Test for () { } ", ); + check_edit( + "type SomeType", + r#" +trait Test { + type SomeType; +} + +impl Test for () { + type$0 +} +"#, + " +trait Test { + type SomeType; +} + +impl Test for () { + type SomeType = $0;\n\ +} +", + ); } #[test] |
