Laurențiu Nicola
8206939fed
clippy::redundant_clone fixes
2021-05-26 18:34:50 +03:00
Domantas Jadenkus
3641abc0c3
add test that it does not create extraneous commas
2021-05-24 22:17:16 +03:00
Domantas Jadenkus
22e5194396
generate match arms with todo!() as placeholder body
2021-05-24 22:17:16 +03:00
bors[bot]
495c9586ec
Merge #8945
...
8945: fix: Make expected type work in more situations r=flodiebold a=flodiebold
Also makes call info show the correct types for generic methods.
![2021-05-23-182952_1134x616_scrot](https://user-images.githubusercontent.com/906069/119269023-dd5a5b00-bbf5-11eb-993a-b6e122c3b9a6.png )
![2021-05-23-183117_922x696_scrot](https://user-images.githubusercontent.com/906069/119269025-dfbcb500-bbf5-11eb-983c-fc415b8428e0.png )
Co-authored-by: Florian Diebold <flodiebold@gmail.com>
2021-05-23 21:55:51 +00:00
Florian Diebold
b8262099cc
Get rid of field_type again
2021-05-23 23:54:35 +02:00
Aleksey Kladov
479a7387c2
feat: generate getter avoids generating types like &Vec<T>
2021-05-24 00:15:23 +03:00
Aleksey Kladov
8696c82777
feat: generate getter assist places the cursor at the generated function
2021-05-23 23:43:33 +03:00
Aleksey Kladov
af54b1e248
minimize tests
2021-05-23 23:19:00 +03:00
Aleksey Kladov
c06599504b
remove duplicate tests
2021-05-23 23:15:54 +03:00
Aleksey Kladov
4c8259e210
reduce duplication
2021-05-23 23:13:35 +03:00
bors[bot]
7d81e40e36
Merge #8901
...
8901: fix: `fill_match_arms` hangs on a tuple of large enums r=matklad a=iDawer
+ Lazy computation of missing arms.
+ Convenience function to test lazy computation: `ide_assists::tests::check_assist_unresolved`.
Fixes #8835
Co-authored-by: Dawer <7803845+iDawer@users.noreply.github.com>
2021-05-22 12:26:40 +00:00
Dawer
d5c96672aa
Test fill_match_arms
for lazy computation.
...
This also adds `ide_assists::tests::check_assist_unresolved` function.
2021-05-21 11:29:24 +05:00
Dawer
570eff6552
fix: fill_match_arms
hangs on a tuple of large enums
2021-05-20 23:56:26 +05:00
Dawer
63d317c71a
Compute missing arms lazily.
2021-05-20 23:56:26 +05:00
bors[bot]
f86a9572f3
Merge #8897
...
8897: minor: Don't compare ast::Visibility by stringifying r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Tobias Wirth <lukastw97@gmail.com>
2021-05-20 16:05:54 +00:00
Lukas Tobias Wirth
da7f1eb756
Don't compare ast::Visibility by stringifying
2021-05-20 17:45:59 +02:00
Lukas Tobias Wirth
066856ab5b
Update outdated auto-import documentation
2021-05-20 15:31:33 +02:00
Dawer
5c5fedb945
add_explicit_type respects @
patterns
2021-05-19 23:27:51 +05:00
Jamie Cunliffe
74f8fe7763
Extract function assist will add async if required
...
The extract function assist will check for an AWAIT_EXPR in the body
and if found, will add async to the generated function.
2021-05-17 18:17:29 +01:00
bors[bot]
b82458818d
Merge #8845
...
8845: Generate the impl block via generate_trait_impl_text_from_impl r=Veykril a=hi-rustin
Try to close https://github.com/rust-analyzer/rust-analyzer/issues/8827
Co-authored-by: hi-rustin <rustin.liu@gmail.com>
2021-05-16 19:32:40 +00:00
Aleksey Kladov
9df0a23368
internal: use standard test style
2021-05-16 15:14:57 +03:00
Aleksey Kladov
e4a7b44e55
internal: use mutable trees when filling match arms
2021-05-16 15:10:18 +03:00
Aleksey Kladov
4e142757e1
minor: use uniform names
2021-05-16 14:18:49 +03:00
bors[bot]
a57bd59f35
Merge #8813
...
8813: Get some more array lengths! r=lf- a=lf-
This is built on #8799 and thus contains its changes. I'll rebase it onto master when that one gets merged. It adds support for r-a understanding the length of:
* `let a: [u8; 2] = ...`
* `let a = b"aaa"`
* `let a = [0u8; 4]`
I have added support for getting the values of byte strings, which was not previously there. I am least confident in the correctness of this part and it probably needs some more tests, as we currently have only one test that exercised that part (!).
Fixes #2922 .
Co-authored-by: Jade <software@lfcode.ca>
2021-05-16 01:53:12 +00:00
hi-rustin
f5ea2a2ab0
Remove attrs
2021-05-15 21:12:06 +08:00
hi-rustin
696a8bf870
Address comments and add more tests
...
Fix tests
Fmt code
2021-05-15 20:44:45 +08:00
hi-rustin
3f0222565d
Generate the impl block via generate_trait_impl_text
2021-05-15 11:29:33 +08:00
Aleksey Kladov
6c21d04307
internal: use standard style for tests
2021-05-14 18:53:53 +03:00
Aleksey Kladov
cea589b3b5
internal: rewrite assoc item manipulaion to use mutable trees
2021-05-14 18:47:08 +03:00
Jade
78d6b88f21
Add more tests, refactor array lengths/consteval work
...
Fix #2922 : add unknown length as a condition for a type having unknown.
Incorporate reviews:
* Extract some of the const evaluation workings into functions
* Add fixmes on the hacks
* Add tests for impls on specific array lengths (these work!!! 😁 )
* Add tests for const generics (indeed we don't support it yet)
2021-05-14 01:39:28 -07:00
bors[bot]
1552fdd3bc
Merge #8814
...
8814: fix: Keep doc comments and outer attrs on "Move module to file" assist r=Veykril a=Jesse-Bakker
Fixes #8804
Co-authored-by: Jesse Bakker <github@jessebakker.com>
2021-05-13 17:37:52 +00:00
bors[bot]
908cd23f81
Merge #8820
...
8820: fix: Return absolute paths in find_path if crate start is ambiguous r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-05-13 16:48:11 +00:00
mixio
0cb5443455
Corrected minor typo on line 20
2021-05-13 18:29:48 +02:00
Jesse Bakker
8c95b205a2
fix: Keep doc comments and outer attrs on "Move module to file" assist
2021-05-13 07:51:00 +02:00
Jade
73023c0299
Support length for ByteStrings
...
I am not confident that my added byte string parsing is right.
2021-05-12 21:22:46 -07:00
Lukas Wirth
69e0b10150
Return absolute paths in find_path if crate start is ambiguous
2021-05-13 02:53:32 +02:00
bors[bot]
1c927d2f8e
Merge #8802
...
8802: Keep comments and attrs when extracting struct from enum variant r=Veykril a=DropDemBits
Fixes #6730
Still unsure if existing visibilities of fields should be forced to pub (which is what was previously done), or if it's okay to keep it in the extracted struct.
Co-authored-by: DropDemBits <r3usrlnd@gmail.com>
2021-05-12 14:42:01 +00:00
DropDemBits
7fefac4bdc
Keep comments and attrs when extracting struct from enum variant
2021-05-11 11:07:47 -04:00
bors[bot]
9fa9d166d8
Merge #8800
...
8800: feat: Make "pull assignments up" assist work in more cases r=Jesse-Bakker a=Jesse-Bakker
Fixes #8771
Co-authored-by: Jesse Bakker <github@jessebakker.com>
2021-05-11 13:14:55 +00:00
Jesse Bakker
5f37e34406
Make "pull assignments up" assist work in more cases
2021-05-11 15:14:23 +02:00
Lukas Wirth
6a8d47e7f0
Give MergeBehaviour variants better names
2021-05-10 21:14:59 +02:00
Aleksey Kladov
bf26e13cd2
simplify
2021-05-10 15:25:56 +03:00
Aleksey Kladov
4f3c0adc5a
internal: introduce ast::make::ext
module with common shortcuts
...
There's a tension between keeping a well-architectured minimal
orthogonal set of constructs, and providing convenience functions.
Relieve this pressure by introducing an dedicated module for
non-orthogonal shortcuts.
This is inspired by the django.shortcuts module which serves a similar
purpose architecturally.
2021-05-09 19:55:43 +03:00
Aleksey Kladov
680a0d54e4
internal: fix make API
2021-05-09 19:22:33 +03:00
Aleksey Kladov
5342800147
internal: rewrite **Repalce impl Trait** assist to mutable syntax trees
2021-05-09 18:20:37 +03:00
Aleksey Kladov
984d20aad8
cleanups
2021-05-09 18:01:54 +03:00
Aleksey Kladov
d9c9f6dc2c
cleanups
2021-05-09 17:58:03 +03:00
Aleksey Kladov
edeb492782
minor: fix test style
2021-05-09 17:47:02 +03:00
bors[bot]
cf4d4f646b
Merge #8773
...
8773: fix: Correctly support SelfType when searching for usages r=Veykril a=Veykril
Fixes #7443
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-05-08 22:09:03 +00:00
Lukas Wirth
41f470fea8
Correctly support SelfType when searching for usages
2021-05-08 22:34:55 +02:00