diff options
Diffstat (limited to 'crates/ra_ide/src')
| -rw-r--r-- | crates/ra_ide/src/completion/complete_trait_impl.rs | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/crates/ra_ide/src/completion/complete_trait_impl.rs b/crates/ra_ide/src/completion/complete_trait_impl.rs index fab02945c..2ec0e7ce9 100644 --- a/crates/ra_ide/src/completion/complete_trait_impl.rs +++ b/crates/ra_ide/src/completion/complete_trait_impl.rs | |||
| @@ -142,11 +142,11 @@ fn add_function_impl( | |||
| 142 | CompletionItemKind::Function | 142 | CompletionItemKind::Function |
| 143 | }; | 143 | }; |
| 144 | 144 | ||
| 145 | let snippet = format!("{} {{}}", display); | 145 | let snippet = format!("{} {{\n $0\n}}", display); |
| 146 | 146 | ||
| 147 | let range = TextRange::from_to(fn_def_node.text_range().start(), ctx.source_range().end()); | 147 | let range = TextRange::from_to(fn_def_node.text_range().start(), ctx.source_range().end()); |
| 148 | 148 | ||
| 149 | builder.text_edit(TextEdit::replace(range, snippet)).kind(completion_kind).add_to(acc); | 149 | builder.snippet_edit(TextEdit::replace(range, snippet)).kind(completion_kind).add_to(acc); |
| 150 | } | 150 | } |
| 151 | 151 | ||
| 152 | fn add_type_alias_impl( | 152 | fn add_type_alias_impl( |
| @@ -217,9 +217,10 @@ fn make_const_compl_syntax(const_: &ast::ConstDef) -> String { | |||
| 217 | 217 | ||
| 218 | #[cfg(test)] | 218 | #[cfg(test)] |
| 219 | mod tests { | 219 | mod tests { |
| 220 | use crate::completion::{test_utils::do_completion, CompletionItem, CompletionKind}; | ||
| 221 | use insta::assert_debug_snapshot; | 220 | use insta::assert_debug_snapshot; |
| 222 | 221 | ||
| 222 | use crate::completion::{test_utils::do_completion, CompletionItem, CompletionKind}; | ||
| 223 | |||
| 223 | fn complete(code: &str) -> Vec<CompletionItem> { | 224 | fn complete(code: &str) -> Vec<CompletionItem> { |
| 224 | do_completion(code, CompletionKind::Magic) | 225 | do_completion(code, CompletionKind::Magic) |
| 225 | } | 226 | } |
| @@ -255,7 +256,7 @@ mod tests { | |||
| 255 | label: "fn test()", | 256 | label: "fn test()", |
| 256 | source_range: [209; 210), | 257 | source_range: [209; 210), |
| 257 | delete: [209; 210), | 258 | delete: [209; 210), |
| 258 | insert: "fn test() {}", | 259 | insert: "fn test() {\n $0\n}", |
| 259 | kind: Function, | 260 | kind: Function, |
| 260 | lookup: "test", | 261 | lookup: "test", |
| 261 | }, | 262 | }, |
| @@ -313,7 +314,7 @@ mod tests { | |||
| 313 | label: "fn test()", | 314 | label: "fn test()", |
| 314 | source_range: [139; 140), | 315 | source_range: [139; 140), |
| 315 | delete: [139; 140), | 316 | delete: [139; 140), |
| 316 | insert: "fn test() {}", | 317 | insert: "fn test() {\n $0\n}", |
| 317 | kind: Function, | 318 | kind: Function, |
| 318 | lookup: "test", | 319 | lookup: "test", |
| 319 | }, | 320 | }, |
| @@ -342,7 +343,7 @@ mod tests { | |||
| 342 | label: "fn foo()", | 343 | label: "fn foo()", |
| 343 | source_range: [141; 142), | 344 | source_range: [141; 142), |
| 344 | delete: [138; 142), | 345 | delete: [138; 142), |
| 345 | insert: "fn foo() {}", | 346 | insert: "fn foo() {\n $0\n}", |
| 346 | kind: Function, | 347 | kind: Function, |
| 347 | lookup: "foo", | 348 | lookup: "foo", |
| 348 | }, | 349 | }, |
| @@ -374,7 +375,7 @@ mod tests { | |||
| 374 | label: "fn foo_bar()", | 375 | label: "fn foo_bar()", |
| 375 | source_range: [200; 201), | 376 | source_range: [200; 201), |
| 376 | delete: [197; 201), | 377 | delete: [197; 201), |
| 377 | insert: "fn foo_bar() {}", | 378 | insert: "fn foo_bar() {\n $0\n}", |
| 378 | kind: Function, | 379 | kind: Function, |
| 379 | lookup: "foo_bar", | 380 | lookup: "foo_bar", |
| 380 | }, | 381 | }, |
| @@ -425,7 +426,7 @@ mod tests { | |||
| 425 | label: "fn foo()", | 426 | label: "fn foo()", |
| 426 | source_range: [144; 145), | 427 | source_range: [144; 145), |
| 427 | delete: [141; 145), | 428 | delete: [141; 145), |
| 428 | insert: "fn foo<T>() {}", | 429 | insert: "fn foo<T>() {\n $0\n}", |
| 429 | kind: Function, | 430 | kind: Function, |
| 430 | lookup: "foo", | 431 | lookup: "foo", |
| 431 | }, | 432 | }, |
| @@ -454,7 +455,7 @@ mod tests { | |||
| 454 | label: "fn foo()", | 455 | label: "fn foo()", |
| 455 | source_range: [166; 167), | 456 | source_range: [166; 167), |
| 456 | delete: [163; 167), | 457 | delete: [163; 167), |
| 457 | insert: "fn foo<T>()\nwhere T: Into<String> {}", | 458 | insert: "fn foo<T>()\nwhere T: Into<String> {\n $0\n}", |
| 458 | kind: Function, | 459 | kind: Function, |
| 459 | lookup: "foo", | 460 | lookup: "foo", |
| 460 | }, | 461 | }, |
