aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_assists/src
Commit message (Collapse)AuthorAgeFilesLines
...
| * auto_import: make auto import working with target as a list of SmolStr ↵Andrea Pretto2019-04-211-63/+65
| | | | | | | | instead of ast::Path
| * auto_import: use TextEditBuilder instead of AssistBuilder to make it more ↵Andrea Pretto2019-04-212-8/+36
| | | | | | | | reusable
* | drop useless testAleksey Kladov2019-04-221-28/+0
| |
* | move add_missing_members to structured editing APIAleksey Kladov2019-04-222-129/+178
| | | | | | | | | | Currently, this is more code, and we also loose auto-indenting of bodies, but, long-term, this is the right approach
* | more type safetyAleksey Kladov2019-04-223-4/+29
| |
* | test short structsAleksey Kladov2019-04-212-4/+38
| |
* | use structured editing API for fill struct assistAleksey Kladov2019-04-213-119/+138
| |
* | start structured editing APIAleksey Kladov2019-04-212-0/+154
|/
* better formatting when adding trait membersAleksey Kladov2019-04-171-8/+23
| | | | | | * it's conventional not to use one-liners * new placement is more predictable, b/c it does not depend on header's length
* replace usages of `algo::generate` with `iter::successors` from stdRobin Freyler2019-04-131-2/+3
|
* fold ScopeWithSyntax into SourceAnalyzerAleksey Kladov2019-04-131-1/+1
|
* hide some scopesAleksey Kladov2019-04-131-8/+3
|
* use really correct resolver for expressionsAleksey Kladov2019-04-124-3/+4
|
* fix typoAleksey Kladov2019-04-111-2/+2
|
* renameAleksey Kladov2019-04-114-6/+6
|
* introduce SourceAnalyzerAleksey Kladov2019-04-114-28/+16
|
* Stylistic changes. Updated features.md with the new assists.Marco Groppo2019-04-091-8/+6
|
* Add explicit type assist.Marco Groppo2019-04-082-0/+97
|
* remove flavorAleksey Kladov2019-04-021-2/+2
|
* add ast::tokensAleksey Kladov2019-04-022-8/+3
|
* intelligently add parens when inlining local varaiblesgfreezy2019-04-012-44/+391
|
* switch to new rowanAleksey Kladov2019-04-0112-56/+62
|
* Flip any binary expression except assignments.Marco Groppo2019-03-261-64/+56
|
* Assist to flip (some) binary expressions.Marco Groppo2019-03-253-88/+151
| | | | This assist can flip the following operators: ==, !=, >, >=, <, <=.
* Merge #1037bors[bot]2019-03-252-0/+300
|\ | | | | | | | | | | | | | | 1037: inline immutable local varialbe r=matklad a=gfreezy resolved #1033 Co-authored-by: gfreezy <[email protected]>
| * use | instead of multiple match armsgfreezy2019-03-251-27/+27
| |
| * inline immutable local varialbegfreezy2019-03-252-0/+300
| |
* | Merge #1036bors[bot]2019-03-252-0/+88
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | 1036: Assist to flip equality (==) and negated equality (!=) operands. r=matklad a=marcogroppo This PR adds an assist to flip the equality operands. I hope this is the right way to do this (I'm a newbie...) Fixes #1023. Co-authored-by: Marco Groppo <[email protected]>
| * Target only the actual operator.Marco Groppo2019-03-241-12/+11
| | | | | | | | | | Renamed `BinExpr::op()` and `PrefixExpr::op()` to `op_kind`. Now `op()` returns the `SyntaxNode`.
| * Minor formatting changes.Marco Groppo2019-03-241-1/+1
| |
| * Assist to flip equality (==) and negative equality (!=) operands.Marco Groppo2019-03-242-0/+89
| |
* | Add assist for adding default methodsgfreezy2019-03-232-3/+59
| |
* | Add impl members assist shold not copy docstrings, attrs and default methods.gfreezy2019-03-231-22/+42
|/
* Remove the old variants replaced by Ty::ApplyFlorian Diebold2019-03-212-12/+8
|
* Improve performance and orderingCaio2019-03-201-21/+15
|
* Fill partial fieldsCaio2019-03-201-32/+127
|
* Merge #989bors[bot]2019-03-182-0/+153
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 989: Implement naive version of fill_struct_fields assist r=matklad a=yanchith Fixes #964 This implements the `fill_struct_fields` assist. Currently only works for named struct fields, but not for tuple structs, because we seem to be missing a `TupleStructLit` (akin to `StructLit`, but for tuple structs). I am happy to implement `TupleStructLit` parsing given some guidance (provided it's really missing) and make the assist work for tuple structs as well. Could do so either in this PR, or another one 🙂 Sorry if I missed something important, this is my first PR for Rust Analyzer. Btw is there any way to run the assists in emacs? UPDATE: I just realized that parsing `TupleStructLit` would be quite difficult as it it really similar, if not identical to a function call... Co-authored-by: yanchith <[email protected]>
| * Only replace NamedFieldList and add test for preserving Selfyanchith2019-03-181-13/+45
| |
| * Remove unachievable TODOyanchith2019-03-181-1/+0
| |
| * Implement naive version of fill_struct_fields assistyanchith2019-03-172-0/+122
| |
* | Move the primary assist fn to the top of the fileIgor Matuszewski2019-03-161-30/+30
| |
* | Provide assist when cursor is immediately outside impl item blockIgor Matuszewski2019-03-161-14/+18
| |
* | Do a cleanup/legibility passIgor Matuszewski2019-03-161-21/+21
| |
* | Take into account parent indent when filling trait membersIgor Matuszewski2019-03-161-9/+41
| |
* | Simplify trait resolution fragmentIgor Matuszewski2019-03-161-6/+3
| |
* | Ignore unnamed trait fns and add more testsIgor Matuszewski2019-03-161-2/+70
| |
* | Simplify calculation of missing functionsIgor Matuszewski2019-03-161-9/+2
| | | | | | | | | | | | Asymptotically computing a set difference is faster but in the average case we won't have more than ~10 functions. Also prefer not using hash sets as these may yield nondeterministic results.
* | Properly support the case when the cursor is inside an empty block or outsideIgor Matuszewski2019-03-161-15/+44
| |
* | Redo indent calculation when adding missing impl membersIgor Matuszewski2019-03-161-9/+21
| |
* | Implement a simple working assistIgor Matuszewski2019-03-161-13/+59
| |