aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_analysis
Commit message (Collapse)AuthorAgeFilesLines
* Add support for formatting entire document with rustfmtAleksander Vognild Burkow2018-12-292-0/+6
| | | | | | Attempting to format a document when rustfmt isn't installed will result in an error being returned to the frontend. An alternative implementation would be returning zero replacements.
* completion for enum variantsAleksey Kladov2018-12-282-9/+31
|
* extend selection works with macrosAleksey Kladov2018-12-283-4/+68
|
* Merge #350bors[bot]2018-12-285-22/+167
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 350: Super simple macro support r=matklad a=matklad Super simple support for macros, mostly for figuring out how to fit them into the current architecture. Expansion is hard-coded and string based (mid-term, we should try to copy-paste macro-by-example expander from rustc). Ideally, we should handle * highlighting inside the macro (done) * extend selection inside the macro * completion inside the macro * indexing structs, produced by the macro Co-authored-by: Aleksey Kladov <[email protected]>
| * move macro to a separate moduleAleksey Kladov2018-12-283-60/+67
| |
| * switch to FileRangeAleksey Kladov2018-12-282-3/+16
| |
| * introduce FileRangeAleksey Kladov2018-12-282-18/+22
| |
| * highlight macro identsAleksey Kladov2018-12-281-1/+1
| |
| * super simplistic macro expansionAleksey Kladov2018-12-281-1/+108
| |
| * add macro-call nodeAleksey Kladov2018-12-281-2/+4
| |
| * move highlightning to a separate fileAleksey Kladov2018-12-282-2/+14
| |
* | :arrow_up: salsaAleksey Kladov2018-12-281-1/+1
|/
* simplifyAleksey Kladov2018-12-271-6/+1
|
* dead codeAleksey Kladov2018-12-272-21/+1
|
* remove FnIdAleksey Kladov2018-12-272-4/+0
|
* use names everywhereAleksey Kladov2018-12-271-18/+16
|
* add function to completion ctxAleksey Kladov2018-12-275-21/+18
|
* Bump parking_lot from 0.6.4 to 0.7.0dependabot[bot]2018-12-271-1/+1
| | | | | | | | Bumps [parking_lot](https://github.com/Amanieu/parking_lot) from 0.6.4 to 0.7.0. - [Release notes](https://github.com/Amanieu/parking_lot/releases) - [Changelog](https://github.com/Amanieu/parking_lot/blob/master/CHANGELOG.md) - [Commits](https://github.com/Amanieu/parking_lot/commits) Signed-off-by: dependabot[bot] <[email protected]>
* Merge #332bors[bot]2018-12-276-24/+177
|\ | | | | | | | | | | | | | | | | | | 332: Struct types r=matklad a=flodiebold Infer types for struct fields, and add basic field completions. There's also some code for enums, but I focused on getting structs working. There's still ways to go before this becomes useful: There's no autoderef (or even reference types) and no inference for `self`, for example. Co-authored-by: Florian Diebold <[email protected]>
| * Resolve field types lazilyFlorian Diebold2018-12-251-0/+1
| | | | | | | | I.e. not already when getting the HIR for the struct.
| * Add a hir::TypeRef as an intermediate between ast::TypeRef and ty::TyFlorian Diebold2018-12-251-1/+1
| |
| * Determine receiver for completion in a more robust wayFlorian Diebold2018-12-252-21/+31
| | | | | | | | Also rename a parameter.
| * Implement basic completion for fieldsFlorian Diebold2018-12-254-8/+133
| |
| * Do name resolution by namespace (types/values)Florian Diebold2018-12-253-13/+28
| |
| * Add basic HIR and types for structs/enumsFlorian Diebold2018-12-251-0/+2
| |
* | expose make_pub_crate actionAleksey Kladov2018-12-271-0/+1
| |
* | add fix for removing unnecessary braces in use statementsgfreezy2018-12-252-38/+27
|/
* Merge #326bors[bot]2018-12-244-6/+10
|\ | | | | | | | | | | | | | | 326: resolved #324: remove unnecessary braces in use statement. r=matklad a=gfreezy Add inspection for unnecessary braces in use statement Co-authored-by: gfreezy <[email protected]>
| * fix testsgfreezy2018-12-241-1/+1
| |
| * remove option from Diagnosticgfreezy2018-12-242-4/+4
| |
| * keep severity to Error & WeakWarninggfreezy2018-12-241-1/+1
| |
| * remove unnecessary braces in use statmentsgfreezy2018-12-232-4/+2
| |
| * add serverity to vscode diagnosticsgfreezy2018-12-233-2/+8
| |
* | Resolve paths to defs (functions currently) during type inferenceFlorian Diebold2018-12-232-1/+2
| |
* | CleanupFlorian Diebold2018-12-231-2/+8
| |
* | Add testing infrastructure for type inferenceFlorian Diebold2018-12-232-1/+16
| | | | | | | | - move dir_tests to test_utils for that.
* | Add beginnings of type infrastructureFlorian Diebold2018-12-231-0/+1
|/
* less verbose debug for library dataAleksey Kladov2018-12-222-1/+14
|
* completion uses hir scopesAleksey Kladov2018-12-222-24/+26
|
* fix snippet iconAleksey Kladov2018-12-211-1/+1
|
* binding iconAleksey Kladov2018-12-212-2/+5
|
* moar iconsAleksey Kladov2018-12-213-4/+29
|
* more iconsAleksey Kladov2018-12-211-1/+1
|
* specify completion item kindAleksey Kladov2018-12-214-12/+17
|
* cleanupAleksey Kladov2018-12-214-29/+34
|
* introduce ComletionItemKindAleksey Kladov2018-12-216-34/+28
|
* rename completion kindAleksey Kladov2018-12-211-6/+6
|
* Merge #315bors[bot]2018-12-218-770/+832
|\ | | | | | | | | | | | | | | | | | | | | 315: Split completion into manageable components r=matklad a=matklad The main idea here is to do completion in two phases: * first, we figure out surrounding context * then, we run a series of completers on the given context. Co-authored-by: Aleksey Kladov <[email protected]>
| * cleanupAleksey Kladov2018-12-215-15/+7
| |
| * docsAleksey Kladov2018-12-217-167/+181
| |