aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_assists/src/assists
Commit message (Collapse)AuthorAgeFilesLines
* Merge #2099bors[bot]2019-10-271-4/+35
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2099: Fix panic on raw string assist r=matklad a=aee11 Strings that do not contain two quotation marks would cause a slice indexing panic because `find_usual_string_range` would return a range that only contained a single quotation mark. Panic example: ``` fn main() { let s = "<|> } ``` I noticed a lot of panics from the `make_raw_string` assist while working on another issue today. Co-authored-by: Alexander Elís Ebenesersson <[email protected]>
| * Fix panic on raw string assistAlexander Elís Ebenesersson2019-10-271-4/+35
| | | | | | | | | | | | | | | | Strings that do not contain two quotation marks would cause a slice indexing panic because code was assuming `find_usual_string_range` would return a string with two quotes, but it would incorrectly also return text ranges containing only a single quote.
* | move all assists to use generated docsAleksey Kladov2019-10-271-5/+16
| |
* | simplify AssistCtx APIAleksey Kladov2019-10-2721-153/+102
| | | | | | | | | | We never actually use ability to create multiple actions out of a single context
* | simplifyAleksey Kladov2019-10-271-30/+13
| |
* | Merge #2090bors[bot]2019-10-271-98/+98
|\ \ | | | | | | | | | | | | | | | | | | | | | 2090: move public stuff to top r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * | move public stuff to topAleksey Kladov2019-10-271-26/+26
| | |
| * | rename auto_import -> add_importAleksey Kladov2019-10-271-72/+72
| |/ | | | | | | We are long way from auto imports at the moment
* | use new api for flip_trait_bound assistAleksey Kladov2019-10-271-11/+22
| |
* | Add tests for the trait bound flip assist.Wesley Norris2019-10-271-0/+76
| | | | | | | | Co-authored-by: vlthr <[email protected]>
* | Fixes #2054.Wesley Norris2019-10-271-0/+32
|/ | | | This adds the `flip_trait_bound` assist which allows for the swapping of two trait bounds in a trait list that are next to each other.
* document almost all assistsAleksey Kladov2019-10-274-9/+114
|
* use more consistent namingAleksey Kladov2019-10-2716-17/+17
| | | | | I think this is the first time I use global rename for rust-analyzer itself :-)
* extract assist helper for getting a specific tokenAleksey Kladov2019-10-273-14/+7
|
* raw string assists work in macrosAleksey Kladov2019-10-271-49/+58
|
* document some more assistsAleksey Kladov2019-10-273-6/+89
|
* use unicode bar for drawing the cursorAleksey Kladov2019-10-261-1/+1
|
* support range selection in assist docsAleksey Kladov2019-10-261-2/+16
|
* check style for assist docsAleksey Kladov2019-10-267-11/+54
|
* use correct spacing for enum patternAleksey Kladov2019-10-261-3/+3
|
* document a couple of assistsAleksey Kladov2019-10-262-2/+35
|
* add blank lines for readabilityAleksey Kladov2019-10-265-0/+10
|
* generate more assists docsAleksey Kladov2019-10-255-18/+119
|
* auto-generate assists docs and testsAleksey Kladov2019-10-251-23/+20
|
* xtask: move codegen to a moduleAleksey Kladov2019-10-231-2/+2
|
* minor cleanupAleksey Kladov2019-10-231-18/+36
|
* Adds "replace with guarded return" assistMikhail Modin2019-10-201-0/+276
|
* Merge #1999bors[bot]2019-10-141-1/+1
|\ | | | | | | | | | | | | | | 1999: Simplify find().is_some() to any() r=matklad a=kjeremy Co-authored-by: kjeremy <[email protected]>
| * use any()kjeremy2019-10-111-1/+1
| |
* | add syntax-tree based indentsAleksey Kladov2019-10-121-7/+11
|/
* Merge #1922bors[bot]2019-10-081-18/+92
|\ | | | | | | | | | | | | | | 1922: feat(assists): Make raw string unescaped r=matklad a=Geobert Last piece of https://github.com/rust-analyzer/rust-analyzer/issues/1730 Co-authored-by: Geobert Quach <[email protected]>
| * feat(assists): Address some PR commentsGeobert Quach2019-10-041-25/+24
| |
| * feat(assists): Even smarter with hashesGeobert Quach2019-10-011-12/+44
| | | | | | | | Count `"#*` streak only, extract the counting in a function, unit test this function
| * feat(assists): Be smart about hashesGeobert Quach2019-09-301-1/+36
| | | | | | | | Add max_hashes_streak + 1 hashes to the raw string
| * feat(assists): Keep only one version of make_raw_stringGeobert Quach2019-09-291-82/+13
| |
| * feat(assists): Make raw string unescapedGeobert Quach2019-09-261-0/+77
| |
* | remove `visitor` moduleEkaterina Babshukova2019-10-051-3/+3
| |
* | [#1807] Refactor file structureLúcás Meier2019-10-041-33/+33
| | | | | | | | | | Use the more conventional way of importing the ast types, and put the assist at the top of the file.
* | Fix formattingLúcás Meier2019-10-041-22/+9
| |
* | Create an assist for applying De Morgan's lawLúcás Meier2019-10-031-0/+115
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #1807 This assist can transform expressions of the form `!x || !y` into `!(x && y)`. This also works with `&&`. This assist will only trigger if the cursor is on the central logical operator. The main limitation of this current implementation is that both operands need to be an explicit negation, either of the form `!x`, or `x != y`. More operands could be accepted, but this would complicate the implementation quite a bit.
* | Merge branch 'master' into feature/issue/1856Alexander Andreev2019-09-303-28/+22
|\ \ | | | | | | | | | | | | # Conflicts: # crates/ra_assists/src/ast_editor.rs
| * | Fix API of AttruHOOCCOOHu2019-09-301-1/+1
| | |
| * | cleanup editorAleksey Kladov2019-09-301-4/+7
| | |
| * | remove ast_editor.rsAleksey Kladov2019-09-301-5/+4
| | |
| * | move remove bounds to ast/edit.rsAleksey Kladov2019-09-301-2/+1
| | |
| * | migrate add impl items to the new editing APIAleksey Kladov2019-09-281-8/+7
| | |
| * | simplify strip attrsAleksey Kladov2019-09-281-9/+3
| | |
* | | Added test for check doc strings in crates.Alexander Andreev2019-09-3018-0/+36
|/ / | | | | | | #1856
* | Merge #1815bors[bot]2019-09-271-1/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1815: Support correct `$crate` expansion in macros r=uHOOCCOOHu a=uHOOCCOOHu This PR makes normal use cases of `$crate` from macros work as expected. It makes more macros from `std` work. Type inference works well with `panic`, `unimplemented`, `format`, and maybe more. Sadly that `vec![1, 2, 3]` still not works, but it is not longer an issue about macro. Screenshot: ![Screenshot_20190927_022136](https://user-images.githubusercontent.com/14816024/65714465-b4568f80-e0cd-11e9-8043-dd44c2ae8040.png) Co-authored-by: uHOOCCOOHu <[email protected]>
| * | Support `$crate` in item and expr place.uHOOCCOOHu2019-09-261-1/+1
| |/