aboutsummaryrefslogtreecommitdiff
path: root/crates/assists/src
Commit message (Collapse)AuthorAgeFilesLines
* Merge #7080bors[bot]2021-01-011-1/+2
|\ | | | | | | | | | | | | | | 7080: Implement ConstParams for HIR r=Veykril a=Veykril r? @flodiebold Co-authored-by: Lukas Wirth <[email protected]>
| * Add ConstParams to the ide layerLukas Wirth2021-01-011-1/+2
| |
* | Avoid a couple of allocationsLaurențiu Nicola2020-12-293-35/+35
|/
* Simplify assists resolution APIAleksey Kladov2020-12-263-91/+49
| | | | | | Assist vs UnresolvedAssist split doesn't really pull its weight. This is especially bad if we want to include `Assist` as a field of diagnostics, where we'd have to make the thing generic.
* Merge #7038bors[bot]2020-12-252-14/+18
|\ | | | | | | | | | | | | | | 7038: Fix type typo in add_missing_impl_members doc r=Veykril a=Veykril bors r+ Co-authored-by: Lukas Wirth <[email protected]>
| * Fix type typo in add_missing_impl_members docLukas Wirth2020-12-252-14/+18
| |
* | Don't think that /submod.rs is /mod.rsAleksey Kladov2020-12-231-4/+4
| |
* | Improve extract_module_to_file assistAleksey Kladov2020-12-221-103/+66
|/ | | | | | | * simplify code * correctly handle crate roots and mod.rs files (nested inline modules are still mishandled) * make sure that new text contains a trailing newline
* Merge #6746bors[bot]2020-12-225-7/+221
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 <[email protected]>
| * Fix assist test logicDaiki Ihara2020-12-211-2/+6
| |
| * Add initial_contents field for CreateFileDaiki Ihara2020-12-212-39/+18
| |
| * Add extract_module_to_file assistDaiki Ihara2020-12-213-0/+187
| |
| * Add handling file_system_edit in test assistsDaiki Ihara2020-12-212-15/+59
| |
* | Delete related whitespace when removing unused paramRüdiger Herrmann2020-12-211-7/+74
| | | | | | | | | | | | | | 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
* | Remove parentheses when inverting `!(cond)`Jesse Bakker2020-12-212-1/+16
|/
* Align code_model name with ungrammarAleksey Kladov2020-12-203-6/+6
|
* Minor, cleanup APIAleksey Kladov2020-12-181-1/+1
|
* Merge #6896bors[bot]2020-12-163-14/+11
|\ | | | | | | | | | | | | | | | | | | | | | | 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 <[email protected]> Co-authored-by: Jonas Schievink <[email protected]> Co-authored-by: Lukas Wirth <[email protected]>
| * Node-ify lifetimesLukas Wirth2020-12-163-14/+11
| |
* | Merge #6861bors[bot]2020-12-163-0/+204
|\ \ | | | | | | | | | | | | | | | | | | | | | 6861: generate default implementation for an enum from an enum variant #6860 r=matklad a=bnjjj close #6860 Co-authored-by: Benjamin Coenen <[email protected]>
| * | generate default implementation for an enum from an enum variant #6860Benjamin Coenen2020-12-151-4/+8
| | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
| * | generate default implementation for an enum from an enum variant #6860Benjamin Coenen2020-12-151-22/+22
| | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
| * | generate default implementation for an enum from an enum variant #6860Benjamin Coenen2020-12-143-0/+200
| | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
* | | Merge #6894bors[bot]2020-12-162-0/+13
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | 6894: Parenthesize composite if condition before inverting in invert-if assist r=matklad a=Jesse-Bakker Fixes #6867 Co-authored-by: Jesse Bakker <[email protected]>
| * | Parenthesize composite if condition before inverting in invert-if assistJesse Bakker2020-12-152-0/+13
| |/
* / Use standard test styleAleksey Kladov2020-12-151-62/+67
|/
* Merge #6845bors[bot]2020-12-121-0/+25
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | 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: ![Code_JCA1Qo0V9P](https://user-images.githubusercontent.com/3757771/101990300-7af44a80-3ca6-11eb-8431-e5eb4de4e78c.png) 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. ![Code_MUFPJUCULY](https://user-images.githubusercontent.com/3757771/101990347-c9094e00-3ca6-11eb-9c6a-146bddf64b7c.png) Co-authored-by: Lukas Wirth <[email protected]>
| * Don't HirDisplay unknown types when displaying for sourceLukas Wirth2020-12-121-0/+25
| |
* | Remove some redundant allocationsJeremy Kolb2020-12-122-2/+2
| |
* | Add Lifetimes to the HIRLukas Wirth2020-12-111-1/+1
|/
* Normalize spelling to American EnglishAleksey Kladov2020-12-102-6/+6
|
* Add replace_match_with_if_let assistLukas Wirth2020-12-056-3/+308
|
* Fix use merging not using the first path segmentLukas Wirth2020-11-301-1/+1
|
* Minor cleanupAleksey Kladov2020-11-303-36/+31
|
* Move the helpers into ide_dbKirill Bulatov2020-11-2810-13/+13
|
* Rustdocs fixesKirill Bulatov2020-11-271-1/+1
|
* Extract the import code into the shared moduleKirill Bulatov2020-11-2712-1433/+30
|
* Fix the profiling stringKirill Bulatov2020-11-271-1/+1
| | | Co-authored-by: Laurențiu Nicola <[email protected]>
* Profile completions betterKirill Bulatov2020-11-272-0/+2
|
* Merge #6586bors[bot]2020-11-271-8/+16
|\ | | | | | | | | | | | | | | 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 <[email protected]>
| * Don't call a closure function in infer_function_return_type labelLukas Wirth2020-11-171-8/+16
| |
* | Avoid string allocations in ignore_testLaurențiu Nicola2020-11-241-1/+1
| |
* | add 'Re-enable this test' assistJakob Hellermann2020-11-231-7/+76
| |
* | Don't wrap parens around expr in remove_dbg assist if its in conditionsLukas Wirth2020-11-201-7/+64
| |
* | Merge #6553bors[bot]2020-11-177-41/+48
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 6553: Auto imports in completion r=matklad a=SomeoneToIgnore ![completion](https://user-images.githubusercontent.com/2690773/99155339-ae4fb380-26bf-11eb-805a-655b1706ce70.gif) 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 <[email protected]>
| * | Avoid turning completion objects into buildersKirill Bulatov2020-11-161-1/+1
| | |
| * | Better filter mod pathsKirill Bulatov2020-11-161-1/+1
| | |
| * | Use imports_locatorKirill Bulatov2020-11-162-28/+34
| | |
| * | Add imports in auto completionKirill Bulatov2020-11-165-12/+13
| |/
* | Use standard code style for test fixturesAleksey Kladov2020-11-171-270/+270
| |