aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_assists/src
Commit message (Collapse)AuthorAgeFilesLines
...
| * Cleanup checking for existing impls in impl From assistMatthew Hall2020-04-021-15/+3
| | | | | | | | | | Use the trait solver to check if there's an existing implementation of From<type_in_enum_variant> for the enum.
| * Add impl From for enum variant assistMatthew Hall2020-04-012-0/+220
| | | | | | | | | | | | Basically adds a From impl for tuple enum variants with one field. Added to cover the fairly common case of implementing your own Error that can be created from another one, although other use cases exist.
* | When adding match arm, don't let the floating commaAleksey Kladov2020-03-311-5/+25
| |
* | Use IntoIterAleksey Kladov2020-03-301-2/+1
| |
* | Remove "TODO" in comment in testMatthew Hall2020-03-281-4/+4
| |
* | Append new match arms rather than replacing all of themMatthew Hall2020-03-281-5/+68
|/ | | | This means we now retain comments when filling in match arms.
* Start stdxAleksey Kladov2020-03-284-37/+29
| | | | This crate will hold everything to small to be worth publishing
* Fix merge-imports assist for wildcard importsPiotr Szpetkowski2020-03-271-0/+28
|
* Fix assist descriptionAleksey Kladov2020-03-271-4/+8
|
* Merge #3742bors[bot]2020-03-273-0/+136
|\ | | | | | | | | | | | | | | | | | | | | 3742: Replace if with if-let r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * Replace if with if-letAleksey Kladov2020-03-273-0/+136
| |
* | Merge #3741bors[bot]2020-03-271-1/+1
|\| | | | | | | | | | | | | | | | | | | | | 3741: More general ctor for ifs r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * More general ctor for ifsAleksey Kladov2020-03-271-1/+1
| |
* | Merge #3732bors[bot]2020-03-263-0/+203
|\ \ | |/ |/| | | | | | | | | | | 3732: Assist: replace unwrap with match r=matklad a=unrealhoang attempt on #3669 Co-authored-by: Unreal Hoang <[email protected]>
| * Assist: replace unwrap with matchUnreal Hoang2020-03-263-0/+203
| |
* | Get rid of ItemOrMacroAleksey Kladov2020-03-261-2/+2
| |
* | Fix add visibility false-positiveAleksey Kladov2020-03-252-12/+29
|/
* Merge #3708bors[bot]2020-03-243-38/+83
|\ | | | | | | | | | | | | | | | | | | | | 3708: Generalise syntax rewriting infrastructure to allow removal of nodes r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * Generalise syntax rewriting infrastructure to allow removal of nodesAleksey Kladov2020-03-243-38/+65
| |
| * Add a testAleksey Kladov2020-03-231-0/+18
| |
* | Merge #3705bors[bot]2020-03-241-1/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3705: Align naming r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | Align namingAleksey Kladov2020-03-241-1/+1
| | |
* | | Merge #3700bors[bot]2020-03-242-47/+47
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | | | | 3700: fill match arms with empty block rather than unit tuple r=matklad a=JoshMcguigan As requested by @Veetaha in #3689 and #3687, this modifies the fill match arms assist to create match arms as an empty block `{}` rather than a unit tuple `()`. In one test I left one of the pre-existing match arms as a unit tuple, and added a body to another match arm, to demonstrate that the contents of existing match arms persist. Co-authored-by: Josh Mcguigan <[email protected]>
| * | fill match arms with empty block rather than unit tupleJosh Mcguigan2020-03-242-47/+47
| | |
* | | Add a testKirill Bulatov2020-03-242-9/+45
| | |
* | | Use more generic public apiKirill Bulatov2020-03-243-24/+25
| | |
* | | Auto import macrosKirill Bulatov2020-03-243-16/+25
|/ /
* | review commentsJosh Mcguigan2020-03-231-16/+108
| |
* | implement fill match arm assist for tuple of enumsJosh Mcguigan2020-03-231-14/+149
|/
* disable invert if assist for if-let to fix #3281Josh Mcguigan2020-03-211-0/+13
|
* Address nits and suggestions.Steffen Lyngbaek2020-03-191-140/+32
| | | | | Simplify the logic a lot by removing the check for a placeholder pat. This means the auto-fill no longer returns a compile-able value.
* Don't show assist if all arms are presentSteffen Lyngbaek2020-03-191-33/+37
|
* 'Fill match arms' should work with existing match armsSteffen Lyngbaek2020-03-191-25/+281
| | | | | | | | | | | | | | | | | | | | | | | | | | | Addresses #3039 This essentially adds missing match arms. The algorithm for this can get complicated rather quickly so bail in certain conditions and rely on a PlaceholderPat. The algorighm works as such: - Iterate through the Enum Def Variants - Attempt to see if the variant already exists as a match arm - If yes, skip the enum variant. If no, include it. - If it becomes complicated, rather than exhaustively deal with every branch, mark it as a "partial match" and simply include the placeholder. Conditions for "complication": - The match arm contains a match guard - Any kind of nested destrucuring Order the resulting merged match branches as such: 1. Provided match arms 2. Missing enum variant branch arms 3. End with Placeholder if required - Add extra tests
* Cleanup importsAleksey Kladov2020-03-196-13/+17
|
* Merge nested use treesAleksey Kladov2020-03-191-20/+52
|
* GeneralizeAleksey Kladov2020-03-192-13/+10
|
* Use match_astAleksey Kladov2020-03-181-10/+13
|
* Merge imports assistAleksey Kladov2020-03-185-25/+178
| | | | Work towards #2220
* Reduce visibilityAleksey Kladov2020-03-181-28/+28
|
* SimplifyAleksey Kladov2020-03-132-8/+5
|
* Don't use generic DB where a concrete one will doAleksey Kladov2020-03-131-6/+2
|
* Remove some TextUnit->usize escapeesCAD972020-03-131-1/+1
|
* Rerail split_import API onto ASTAleksey Kladov2020-03-061-19/+33
| | | | | The code is more verbose and less efficient now, but should be reusable in add_import context as well
* Unfold groups with single assists into plain assistsKirill Bulatov2020-03-052-8/+6
|
* Remove old find refs infraAleksey Kladov2020-03-042-13/+21
|
* Highlight assist testsAleksey Kladov2020-03-032-48/+52
|
* Fix applicability of inline localAleksey Kladov2020-03-033-10/+34
|
* One more assertAleksey Kladov2020-03-021-1/+6
|
* Rename ast::ImplBlock -> ast::ImplDefAleksey Kladov2020-02-295-21/+21
|
* Add a FIXMEAleksey Kladov2020-02-291-0/+2
|