bors[bot]
b98ee075ee
Merge #6746
...
6746: Feature/add assist extract module to file r=matklad a=sasurau4
Fix #6522
## Screenshot
<img src="https://user-images.githubusercontent.com/13580199/102748269-33a44300-43a5-11eb-9e37-f5fcb8e62f73.gif " width=600 />
## TODO
- [x] Remove all TODO comment
- [x] Pass the doc test
Co-authored-by: Daiki Ihara <sasurau4@gmail.com >
2020-12-22 10:04:24 +00:00
Rüdiger Herrmann
658ba9e29c
Delete related whitespace when removing unused param
...
Include adjacent whitespace in the text edits to remove the
parameter declaration and its occurences in calling code.
https://github.com/rust-analyzer/rust-analyzer/issues/6663
2020-12-21 18:42:42 +01:00
Jesse Bakker
2e7abf8384
Remove parentheses when inverting !(cond)
2020-12-21 17:37:38 +01:00
Daiki Ihara
66fd262962
Fix assist test logic
2020-12-21 15:55:40 +09:00
Daiki Ihara
7a2eebde22
Add initial_contents field for CreateFile
2020-12-21 15:55:40 +09:00
Daiki Ihara
414576fb30
Add extract_module_to_file assist
2020-12-21 15:55:40 +09:00
Daiki Ihara
c8f5792a36
Add handling file_system_edit in test assists
2020-12-21 15:52:02 +09:00
Aleksey Kladov
f6ed16674c
Align code_model name with ungrammar
2020-12-20 10:05:24 +03:00
Aleksey Kladov
cd4a7bf36e
Minor, cleanup API
2020-12-18 19:50:00 +03:00
bors[bot]
067067a6c1
Merge #6896
...
6896: Node-ify lifetimes r=jonas-schievink a=Veykril
Let's see if this passes the tests 🤞
Depends on https://github.com/rust-analyzer/ungrammar/pull/15
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com >
Co-authored-by: Jonas Schievink <jonas.schievink@ferrous-systems.com >
Co-authored-by: Lukas Wirth <lukastw97@gmail.com >
2020-12-16 17:08:03 +00:00
Lukas Wirth
dd496223f5
Node-ify lifetimes
2020-12-16 14:16:09 +01:00
bors[bot]
c1c36acb02
Merge #6861
...
6861: generate default implementation for an enum from an enum variant #6860 r=matklad a=bnjjj
close #6860
Co-authored-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com >
2020-12-16 08:36:05 +00:00
bors[bot]
ece626fe81
Merge #6894
...
6894: Parenthesize composite if condition before inverting in invert-if assist r=matklad a=Jesse-Bakker
Fixes #6867
Co-authored-by: Jesse Bakker <github@jessebakker.com >
2020-12-16 08:20:11 +00:00
Benjamin Coenen
2c82a1aec7
generate default implementation for an enum from an enum variant #6860
...
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com >
2020-12-15 21:35:41 +01:00
Jesse Bakker
0f42a71806
Parenthesize composite if condition before inverting in invert-if assist
2020-12-15 16:25:57 +01:00
Aleksey Kladov
c582e52a1b
Use standard test style
2020-12-15 11:53:16 +03:00
Benjamin Coenen
490475ee19
generate default implementation for an enum from an enum variant #6860
...
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com >
2020-12-15 09:46:02 +01:00
Benjamin Coenen
08090d81b1
generate default implementation for an enum from an enum variant #6860
...
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com >
2020-12-14 09:44:24 +01:00
bors[bot]
a15d19619e
Merge #6845
...
6845: Don't HirDisplay unknown types when displaying for source r=Veykril a=Veykril
Was wondering why the add missing impl assist didn't do anything here:

Turns out me forgetting to set the Index::Idx type in the trait causes RA to panic due to it trying to to create an unparsable type in the `make` module.
Now we get this instead which imo is definitely better to have.

Co-authored-by: Lukas Wirth <lukastw97@gmail.com >
2020-12-12 18:06:36 +00:00
Lukas Wirth
69b78edb5e
Don't HirDisplay unknown types when displaying for source
2020-12-12 19:05:00 +01:00
Jeremy Kolb
26a1675764
Remove some redundant allocations
2020-12-12 12:27:09 -05:00
Lukas Wirth
11f8664182
Add Lifetimes to the HIR
2020-12-12 00:56:52 +01:00
Aleksey Kladov
17f236c2b0
Normalize spelling to American English
2020-12-10 17:51:56 +03:00
Lukas Wirth
44c76d6550
Add replace_match_with_if_let assist
2020-12-05 15:41:36 +01:00
Lukas Wirth
ec94657077
Fix use merging not using the first path segment
2020-11-30 17:21:07 +01:00
Aleksey Kladov
8c3472b6f9
Minor cleanup
2020-11-30 13:47:38 +03:00
Kirill Bulatov
3f612d37c6
Move the helpers into ide_db
2020-11-28 16:30:39 +02:00
Kirill Bulatov
7b145bd99c
Rustdocs fixes
2020-11-27 19:05:10 +02:00
Kirill Bulatov
f4ae3650d8
Extract the import code into the shared module
2020-11-27 18:28:41 +02:00
Kirill Bulatov
04cd4b17bb
Fix the profiling string
...
Co-authored-by: Laurențiu Nicola <lnicola@users.noreply.github.com >
2020-11-27 18:13:02 +02:00
Kirill Bulatov
b2e6ca46ca
Profile completions better
2020-11-27 18:00:03 +02:00
bors[bot]
572081f1c4
Merge #6586
...
6586: Don't call a closure a function in the infer_function_return_type assist label r=lnicola a=Veykril
`Add this function's return type` becomes `Add this closure's return type` for closures. This makes it more obvious that we are indeed planning on modifying the closure and not its containing function.
Co-authored-by: Lukas Wirth <lukastw97@gmail.com >
2020-11-27 09:49:37 +00:00
Laurențiu Nicola
8af1ed6a09
Avoid string allocations in ignore_test
2020-11-24 12:08:54 +02:00
Jakob Hellermann
a172c2317c
add 'Re-enable this test' assist
2020-11-23 20:31:57 +01:00
Lukas Wirth
5d39f6a357
Don't wrap parens around expr in remove_dbg assist if its in conditions
2020-11-20 17:28:56 +01:00
Lukas Wirth
e8282b37d4
Don't call a closure function in infer_function_return_type label
2020-11-17 22:34:15 +01:00
bors[bot]
156f7d6963
Merge #6553
...
6553: Auto imports in completion r=matklad a=SomeoneToIgnore

Closes https://github.com/rust-analyzer/rust-analyzer/issues/1062 but does not handle the completion order, since it's a separate task for https://github.com/rust-analyzer/rust-analyzer/issues/4922 , https://github.com/rust-analyzer/rust-analyzer/issues/4922 and maybe something else.
2 quirks in the current implementation:
* traits are not auto imported during method completion
If I understand the current situation right, we cannot search for traits by a **part** of a method name, we need a full name with correct case to get a trait for it.
* VSCode (?) autocompletion is not as rigid as in Intellij Rust as you can notice on the animation.
Intellij is able to refresh the completions on every new symbol added, yet VS Code does not query the completions on every symbol for me.
With a few debug prints placed in RA, I've observed the following behaviour: after the first set of completion suggestions is received, next symbol input does not trigger a server request, if the completions contain this symbol.
When more symbols added, the existing completion suggestions are filtered out until none are left and only then, on the next symbol it queries for completions.
It seems like the only alternative to get an updated set of results is to manually retrigger it with Esc and Ctrl + Space.
Despite the eerie latter bullet, the completion seems to work pretty fine and fast nontheless, but if you have any ideas on how to make it more smooth, I'll gladly try it out.
Co-authored-by: Kirill Bulatov <mail4score@gmail.com >
2020-11-17 17:50:08 +00:00
Aleksey Kladov
17e8a00b0b
Use standard code style for test fixtures
2020-11-17 14:43:23 +01:00
Aleksey Kladov
8c6f933773
**Unwrap Block** supports stand-alone blocks
2020-11-17 14:33:30 +01:00
Aleksey Kladov
10fa9c595a
Simplify
2020-11-17 14:33:30 +01:00
Aleksey Kladov
8dd0b7d2b5
Assist target should point at *existing* code
2020-11-17 14:33:30 +01:00
Aleksey Kladov
9a30707281
Add **Ignore Test** assist
2020-11-17 14:22:04 +01:00
Kirill Bulatov
d4128beb3d
Avoid turning completion objects into builders
2020-11-16 23:16:41 +02:00
Kirill Bulatov
38ef1fd4ad
Better filter mod paths
2020-11-16 21:19:06 +02:00
Kirill Bulatov
4c8edd003a
Use imports_locator
2020-11-16 21:19:06 +02:00
Kirill Bulatov
f62e8616c8
Add imports in auto completion
2020-11-16 21:19:05 +02:00
Benjamin Coenen
9f15de77f9
add suggestion ..Default::default() for remaining struct fields in a constructor #6492
...
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com >
2020-11-13 23:20:26 +01:00
Benjamin Coenen
e73d140b51
add suggestion ..Default::default() for remaining struct fields in a constructor #6492
...
Signed-off-by: Benjamin Coenen <5719034+bnjjj@users.noreply.github.com >
2020-11-13 17:17:16 +01:00
bors[bot]
cf73b6851b
Merge #6514
...
6514: Fix extract_struct_from_enum_variant not updating record references r=Veykril a=Veykril
Related to #6510
Co-authored-by: Lukas Wirth <lukastw97@gmail.com >
2020-11-12 17:48:25 +00:00
Lukas Wirth
ccdcd52975
Add extra test to extract_struct_from_enum_variant
2020-11-12 18:44:37 +01:00