bors[bot]
d97f2f6b9b
Merge #10976
...
10976: fix: Show case-insensitive exact matches instead of fuzzy flyimport for short paths r=Veykril a=Veykril
And raise the fuzzy trigger from 2 to 3 chars. This way we keep the ability of flyimporting short names like `Rc`.
Fixes https://github.com/rust-analyzer/rust-analyzer/issues/6917
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-12-11 13:50:55 +00:00
Lukas Wirth
143a30aa51
Show case-insensitive exact matches instead of fuzzy flyimport for short paths
2021-12-11 14:47:11 +01:00
Lukas Wirth
c81aa68afe
Don't show trait flyimports for impl trait and placeholders
2021-12-10 19:18:21 +01:00
Côme ALLART
9c0f9d02bf
feat: trait fn: add panicking example only if default panicks
2021-12-10 15:53:43 +01:00
Côme ALLART
f5e0998402
refactor: use hir to check if fn in trait/impl
2021-12-10 15:16:04 +01:00
Côme ALLART
c3d151ada6
fix: check correctly if function is exported
2021-12-10 14:42:31 +01:00
Côme ALLART
dc4e4c7daa
fix: add mod files in path in generated examples
2021-12-07 23:34:53 +01:00
Côme ALLART
220137f1cf
fix: disable assist for documented functions
2021-12-07 18:02:18 +01:00
Laurențiu Nicola
9a624abc84
Bump deps
2021-12-07 13:15:14 +02:00
Côme ALLART
3a82548c5e
fix: reduce assist scope: pub fn's in pub modules
2021-12-06 23:33:24 +01:00
Côme ALLART
d55d3b63cb
fix: format assist doc for sourcegen_assists_docs
2021-12-06 19:04:44 +01:00
Côme ALLART
998b91af9c
feat: assist to generate documentation templates
2021-12-06 18:32:25 +01:00
rainy-me
79b4e67b4f
fix: defer condition construction
2021-12-04 04:50:06 +09:00
rainy-me
fb90bf9cad
feat: handle while let to loop
2021-12-04 03:19:19 +09:00
Skyler Rain Ross
5b59a5eca8
refactor(assist/add_return_type): avoid threading needs_whitespace
2021-12-02 10:46:07 -08:00
Skyler Rain Ross
e031267602
fix: add return type works when there's missing whitespace
2021-12-02 09:28:18 -08:00
rainy-me
0bb08ccb8f
fix: derive path handling
2021-11-25 00:21:29 +09:00
bors[bot]
b69eee6487
Merge #10809
...
10809: fix: don't discard formatting of `use` lines r=Veykril a=iDawer
Use mutable syntax trees in `merge_imports`, `split_imports`. This tries to resolve #9013 . But I haven't much managed to simplify code of merging.
Also resolve #9361 . It reuses a use tree under the cursor so that comments+indentation are preserved. Merged trees are just appended to the end.
This touches bunch of tests. I removed the sorting of use trees as it needs a proper implementation that takes into account comments and line wrapping. I think it is rustfmt's job or at least until we get a close implementation.
Co-authored-by: iDawer <ilnur.iskhakov.oss@outlook.com>
2021-11-22 14:29:24 +00:00
rainy-me
ebffaa4274
fix: check inline left of binary_expression
2021-11-21 01:48:04 +09:00
iDawer
601413df8f
Use mutable syntax trees in merge_imports
, split_imports
2021-11-19 20:02:27 +05:00
bors[bot]
6c7be6cd84
Merge #10734
...
10734: fix: add generic parameters in convert to manual impl assist r=Veykril a=TheDoctor314
Fixes #10041 .
Co-authored-by: TheDoctor314 <64731940+TheDoctor314@users.noreply.github.com>
2021-11-16 11:27:11 +00:00
Lukas Wirth
92f7db447c
minor: Lift out FxIndex{Map/Set} types into ide_db
2021-11-16 12:15:47 +01:00
TheDoctor314
58a24de7d8
Fix impl_def_from_trait
...
Revert "Fix `impl_trait` function to emit correct ast"
This reverts commit 55a4813151a8f36dcdb520c45a461fe5dfbed499.
Fix `impl_def_from_trait`
It now generates the correct `ast::Impl` using
`generate_trait_impl_text` and parses it to form the right node (copied
from the private fn 'make::ast_from_text').
2021-11-15 22:28:22 +05:30
rainy-me
1f3da38d94
adjust test case and stop deleting newline
2021-11-14 20:56:28 +09:00
rainy-me
c9949c040c
add missing match arms end of last arm
2021-11-14 02:32:10 +09:00
TheDoctor314
55a4813151
Fix impl_trait
function to emit correct ast
...
`impl_trait` code copied from `generate_impl_text_inner` to properly
handle the bounds for the generic parameters.
2021-11-11 14:16:59 +05:30
TheDoctor314
e0e8d877c0
Add generic bounds in test
2021-11-11 14:16:29 +05:30
Lukas Wirth
7776aad166
internal: Flatten Definition::ModuleDef
variant
2021-11-11 00:05:53 +01:00
TheDoctor314
05b368f065
Add generic parameters for manual impl assist
...
The `impl_trait` function takes an optional `GenericParamList` to create
the trait impl.
2021-11-10 12:53:48 +05:30
TheDoctor314
4f93fa1213
Add failing tests for generic struct
2021-11-10 12:53:48 +05:30
bors[bot]
c96481e25f
Merge #10691
...
10691: minor: Use array `into_iter` in more places r=lnicola a=lnicola
bors r+
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-11-04 05:52:05 +00:00
Laurențiu Nicola
139bf9b4e1
Use array into_iter in more places
2021-11-04 07:51:20 +02:00
Lukas Wirth
96db0d8bdd
Add Semantics::original_ast_node for upmapping nodes out of macro files
2021-11-03 21:12:36 +01:00
Lukas Wirth
7fdbdc4ab2
Enable auto-import and qualify-path in derive attributes
2021-10-28 18:40:38 +02:00
Lukas Wirth
3018ffd85e
Refactor ide handling for paths in derive inputs
2021-10-28 16:47:19 +02:00
bors[bot]
210a1d5ece
Merge #10629
...
10629: Add assist for replacing turbofish with explicit type. r=Veykril a=terrynsun
Converts `::<_>` to an explicit type assignment.
```
let args = args.collect::<Vec<String>>();
```
->
```
let args: Vec<String> = args.collect();
```
Closes #10285
Co-authored-by: Terry Sun <terrynsun@gmail.com>
2021-10-27 21:40:28 +00:00
Terry Sun
d800a1bc93
fixup! rustfmt
2021-10-27 10:58:31 -07:00
Terry Sun
3bbd61d674
fixup! delay to_string() until assist is called
2021-10-27 10:46:25 -07:00
Terry Sun
6abdbdd0c9
fixup! narrow range; method calls; check for only one type
2021-10-26 17:50:25 -07:00
Lukas Wirth
a2365ea18a
fix: fix extract_variable not working on macro_call
2021-10-25 21:46:44 +02:00
Terry Sun
324d7d33e8
Add assist for replacing turbofish with explicit type.
...
Converts `::<_>` to an explicit type assignment.
```
let args = args.collect::<Vec<String>>();
```
->
```
let args: Vec<String> = args.collect();
```
Closes #10285
2021-10-24 17:38:45 -07:00
Laurențiu Nicola
8457ae34bd
Set MSRV
2021-10-23 15:07:11 +03:00
bors[bot]
fe7c516084
Merge #10602
...
10602: Add qualify method call assist r=Veykril a=qepasa
This adds `qualify_method_call` assist that allows to replace a method (or trait) call that resolves with its fully qualified path.
For example, for stuct method:
```rust
struct Foo;
impl Foo {
fn foo(&self) {}
}
```
```
let foo = Foo {};
foo.fo$0o();
```
becomes
```rust
let foo = Foo {};
Foo::foo(&foo);
```
for a trait method:
```rust
struct Foo;
trait FooTrait {
fn foo(&self) {}
}
impl FooTrait for Foo {
fn foo(&self) {}
}
```
following call:
```rust
let foo = Foo {};
foo.fo$0o();
```
becomes:
```rust
let foo = Foo {};
FooTrait::foo(&foo);
```
fixes #10453
Co-authored-by: Paweł Palenica <pawelpalenica11@gmail.com>
2021-10-23 08:34:51 +00:00
bors[bot]
a75353e8ac
Merge #9939
...
9939: feat: Adding extract_module assist r=Veykril a=feniljain
Should solve https://github.com/rust-analyzer/rust-analyzer/issues/9591
Co-authored-by: vi_mi <fenil.jain2018@vitstudent.ac.in>
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-10-22 09:29:16 +00:00
vi_mi
3e73a46660
fix: making tests compatible with new trimmed sel_range
2021-10-22 09:16:56 +00:00
Paweł Palenica
bfc86f64c3
apply code review suggestions
2021-10-21 23:42:14 -07:00
Laurențiu Nicola
ca44b6892e
Use array IntoIter
2021-10-22 09:23:29 +03:00
Lukas Wirth
1294bfce86
Migrate to edition 2021
2021-10-21 20:10:40 +02:00
Paweł Palenica
91988f46b7
Add generated docs
2021-10-20 23:54:22 -07:00
Paweł Palenica
c2fd0c48a6
cleanup qualify_path
2021-10-20 23:39:25 -07:00