Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | add ast::tokens | Aleksey Kladov | 2019-04-02 | 2 | -8/+3 |
| | |||||
* | intelligently add parens when inlining local varaibles | gfreezy | 2019-04-01 | 2 | -44/+391 |
| | |||||
* | switch to new rowan | Aleksey Kladov | 2019-04-01 | 12 | -56/+62 |
| | |||||
* | Flip any binary expression except assignments. | Marco Groppo | 2019-03-26 | 1 | -64/+56 |
| | |||||
* | Assist to flip (some) binary expressions. | Marco Groppo | 2019-03-25 | 3 | -88/+151 |
| | | | | This assist can flip the following operators: ==, !=, >, >=, <, <=. | ||||
* | Merge #1037 | bors[bot] | 2019-03-25 | 2 | -0/+300 |
|\ | | | | | | | | | | | | | | | 1037: inline immutable local varialbe r=matklad a=gfreezy resolved #1033 Co-authored-by: gfreezy <[email protected]> | ||||
| * | use | instead of multiple match arms | gfreezy | 2019-03-25 | 1 | -27/+27 |
| | | |||||
| * | inline immutable local varialbe | gfreezy | 2019-03-25 | 2 | -0/+300 |
| | | |||||
* | | Merge #1036 | bors[bot] | 2019-03-25 | 2 | -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 Groppo | 2019-03-24 | 1 | -12/+11 |
| | | | | | | | | | | Renamed `BinExpr::op()` and `PrefixExpr::op()` to `op_kind`. Now `op()` returns the `SyntaxNode`. | ||||
| * | Minor formatting changes. | Marco Groppo | 2019-03-24 | 1 | -1/+1 |
| | | |||||
| * | Assist to flip equality (==) and negative equality (!=) operands. | Marco Groppo | 2019-03-24 | 2 | -0/+89 |
| | | |||||
* | | Add assist for adding default methods | gfreezy | 2019-03-23 | 2 | -3/+59 |
| | | |||||
* | | Add impl members assist shold not copy docstrings, attrs and default methods. | gfreezy | 2019-03-23 | 1 | -22/+42 |
|/ | |||||
* | Remove the old variants replaced by Ty::Apply | Florian Diebold | 2019-03-21 | 2 | -12/+8 |
| | |||||
* | Improve performance and ordering | Caio | 2019-03-20 | 1 | -21/+15 |
| | |||||
* | Fill partial fields | Caio | 2019-03-20 | 1 | -32/+127 |
| | |||||
* | Merge #989 | bors[bot] | 2019-03-18 | 2 | -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 Self | yanchith | 2019-03-18 | 1 | -13/+45 |
| | | |||||
| * | Remove unachievable TODO | yanchith | 2019-03-18 | 1 | -1/+0 |
| | | |||||
| * | Implement naive version of fill_struct_fields assist | yanchith | 2019-03-17 | 2 | -0/+122 |
| | | |||||
* | | Move the primary assist fn to the top of the file | Igor Matuszewski | 2019-03-16 | 1 | -30/+30 |
| | | |||||
* | | Provide assist when cursor is immediately outside impl item block | Igor Matuszewski | 2019-03-16 | 1 | -14/+18 |
| | | |||||
* | | Do a cleanup/legibility pass | Igor Matuszewski | 2019-03-16 | 1 | -21/+21 |
| | | |||||
* | | Take into account parent indent when filling trait members | Igor Matuszewski | 2019-03-16 | 1 | -9/+41 |
| | | |||||
* | | Simplify trait resolution fragment | Igor Matuszewski | 2019-03-16 | 1 | -6/+3 |
| | | |||||
* | | Ignore unnamed trait fns and add more tests | Igor Matuszewski | 2019-03-16 | 1 | -2/+70 |
| | | |||||
* | | Simplify calculation of missing functions | Igor Matuszewski | 2019-03-16 | 1 | -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 outside | Igor Matuszewski | 2019-03-16 | 1 | -15/+44 |
| | | |||||
* | | Redo indent calculation when adding missing impl members | Igor Matuszewski | 2019-03-16 | 1 | -9/+21 |
| | | |||||
* | | Implement a simple working assist | Igor Matuszewski | 2019-03-16 | 1 | -13/+59 |
| | | |||||
* | | Calculate missing functions from impl body | Igor Matuszewski | 2019-03-16 | 1 | -1/+62 |
| | | |||||
* | | Add 'add_missing_impl_members' assist stub | Igor Matuszewski | 2019-03-16 | 2 | -0/+43 |
|/ | |||||
* | rename syntax_mapping as well | Aleksey Kladov | 2019-03-02 | 1 | -2/+2 |
| | |||||
* | rename syntax-mapping -> source-map | Aleksey Kladov | 2019-03-02 | 1 | -1/+1 |
| | |||||
* | add marks to assists | Aleksey Kladov | 2019-02-24 | 3 | -45/+41 |
| | |||||
* | dont show introduce variable everywhere | Aleksey Kladov | 2019-02-24 | 2 | -46/+42 |
| | |||||
* | Assign IDs to assists | Aleksey Kladov | 2019-02-24 | 12 | -26/+41 |
| | |||||
* | Simplify test_fill_match_arm_refs test cases | Ville Penttinen | 2019-02-23 | 1 | -24/+0 |
| | |||||
* | Fix fill_match_arms not working with references | Ville Penttinen | 2019-02-23 | 1 | -0/+103 |
| | |||||
* | Move `non_trivia_sibling` to `ra_syntax::algo` | Ville Penttinen | 2019-02-21 | 2 | -6/+3 |
| | |||||
* | auto_import: fix bug when the common path was shorter than both the current ↵ | Andrea Pretto | 2019-02-14 | 1 | -18/+67 |
| | | | | | | use and target path. Shorter test names. | ||||
* | auto_import: import in enclosing module instead of file | Andrea Pretto | 2019-02-12 | 1 | -4/+38 |
| | |||||
* | auto_import: more tests and some refactorings | Andrea Pretto | 2019-02-12 | 1 | -12/+46 |
| | |||||
* | Fix some typos | Pascal Hertleif | 2019-02-12 | 2 | -5/+5 |
| | |||||
* | ra_assists: assist "providers" can produce multiple assists | Andrea Pretto | 2019-02-11 | 12 | -64/+144 |
| | |||||
* | Merge #762 | bors[bot] | 2019-02-10 | 2 | -0/+732 |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | 762: "Dumb" auto import assist r=matklad a=eulerdisk This adds a new assist to "add xxx::yyy to the current file" when the cursor is on a PATH. It manages correctly nested imports,`self` keyword and creates new nested imports if necessary. [See the tests] It doesn't use name resolution so in that sense is 'dumb', but I have plans to do that. That in the future will be useful to auto import trait names in autocompletion for example. It can easily be extended to provide multiple actions to select in which scope to import. That's another thing I plan to do. @matklad I copied some indentation code from `ide_light`, I don't know at the moment if/how you want to refactor that code. This assist was meant to be in `ide_light`. Co-authored-by: Andrea Pretto <[email protected]> | ||||
| * | auto_import: use ra_fmt | Andrea Pretto | 2019-02-09 | 1 | -109/+29 |
| | | |||||
| * | auto_import: struct variants for ImportAction | Andrea Pretto | 2019-02-09 | 1 | -44/+107 |
| | | |||||
| * | auto_import: remove PathSegmentsMatch | Andrea Pretto | 2019-02-09 | 1 | -65/+37 |
| | |