aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_analysis
Commit message (Collapse)AuthorAgeFilesLines
* migrate ra_analysis to new rowanAleksey Kladov2019-01-0811-76/+65
|
* Implement autoderef for field accessesFlorian Diebold2019-01-071-19/+38
|
* Merge #442bors[bot]2019-01-071-13/+17
|\ | | | | | | | | | | | | | | | | | | | | | | 442: WIP: indent on typing dot r=matklad a=simonvandel Fixes #439. The unit test passes, but I can't seem to make VS code perform the action. The existing action on "=" doesn't work either on my end either though. I didn't add any smart way of detecting the current indent level. Any ideas how I would do that? Co-authored-by: Simon Vandel Sillesen <[email protected]>
| * indent on typing dot. fixes #439Simon Vandel Sillesen2019-01-051-13/+17
| |
* | Improve types for node_expr / node_patFlorian Diebold2019-01-062-10/+6
| |
* | Use HIR Expr for type inferenceFlorian Diebold2019-01-062-6/+17
| | | | | | | | | | Now we can reuse the type inference inside a function when typing whitespace etc. :)
* | Show types when hovering patterns as wellFlorian Diebold2019-01-061-4/+15
| |
* | kill module sourceAleksey Kladov2019-01-061-1/+1
| |
* | adjust commentsAleksey Kladov2019-01-061-0/+1
| |
* | fix ra_analysis to work with the new APIAleksey Kladov2019-01-064-7/+12
| |
* | split module source into decl/definAleksey Kladov2019-01-062-4/+4
| |
* | fix testsAleksey Kladov2019-01-061-16/+13
| |
* | Add fn signature queryFlorian Diebold2019-01-061-0/+1
| |
* | Make FnScopes use hir::ExprFlorian Diebold2019-01-053-9/+6
| | | | | | | | | | | | This was a bit complicated. I've added a wrapper type for now that does the LocalSyntaxPtr <-> ExprId translation; we might want to get rid of that or give it a nicer interface.
* | Add HIR Expr machineryFlorian Diebold2019-01-051-0/+2
|/
* fix testsAleksey Kladov2019-01-053-79/+49
|
* show types in local variable hoversAleksey Kladov2019-01-052-10/+27
|
* kill approximatelly_resolve_symbolAleksey Kladov2019-01-054-90/+11
|
* inline goto_defention testsAleksey Kladov2019-01-053-66/+58
|
* move goto_defenition to a separate fileAleksey Kladov2019-01-053-11/+91
|
* introduce separate goto_defenitionAleksey Kladov2019-01-051-0/+7
|
* kill accidentally added fileAleksey Kladov2019-01-051-73/+0
|
* move typeof to hoverAleksey Kladov2019-01-053-18/+18
|
* fold doc_comment into hoverAleksey Kladov2019-01-053-109/+110
|
* move hover implementation to ra_analysisAleksey Kladov2019-01-053-26/+74
|
* wipAleksey Kladov2019-01-051-0/+26
|
* split import assistAleksey Kladov2019-01-051-0/+73
|
* Merge #370bors[bot]2019-01-044-5/+26
|\ | | | | | | | | | | | | | | | | | | | | | | | | 370: Self params & type r=matklad a=flodiebold This implements type inference for `self`, so field completion for methods taking `self` works now. - rename `IMPL_ITEM` to `IMPL_BLOCK` -- rustc calls the methods etc. inside an impl `ImplItem`s, and the impl itself doesn't define an item, so I thought this name was clearer. - add HIR for impl blocks -- we collect all impls in a crate at once, so we can go from methods to containing impls, and since we will later also need to find all impls for a certain type (which may be anywhere in the crate, I think?). We could be more lazy here, but I don't know if it's worth the complexity. - resolve `self` and `Self` during type inference - refactor a bit in ty.rs as well Co-authored-by: Florian Diebold <[email protected]>
| * Rename ImplsInCrateQuery as wellFlorian Diebold2019-01-041-1/+1
| |
| * Add a test for self field completionFlorian Diebold2019-01-043-5/+25
| | | | | | | | Needed to add a default crate graph in the analysis for that.
| * Add HIR for impl blocksFlorian Diebold2019-01-041-0/+1
| | | | | | | | | | | | | | | | | | Since we need to be able to go from def to containing impl block, as well as the other direction, and to find all impls for a certain type, a design similar to the one for modules, where we collect all impls for the whole crate and keep them in an arena, seemed fitting. The ImplBlock type, which provides the public interface, then consists only of an Arc to the arena containing all impls, and the index into it.
* | :arrow_up: salsaAleksey Kladov2019-01-041-1/+1
|/
* parse doc comment for itemscsmoe2019-01-042-2/+3
|
* index stuff produced by macrosAleksey Kladov2019-01-032-11/+37
|
* construct index from symbols directlyAleksey Kladov2019-01-032-13/+17
|
* don't create many compilation units for testsAleksey Kladov2019-01-033-13/+5
|
* embed file_id into FileSymbolAleksey Kladov2019-01-033-35/+34
|
* fix the testAleksey Kladov2019-01-031-1/+1
|
* more enterprisey assists APIAleksey Kladov2019-01-031-13/+3
|
* split assists over several filesAleksey Kladov2019-01-031-1/+1
|
* rename code-actions -> assistsAleksey Kladov2019-01-031-6/+6
|
* hardcode vec macroAleksey Kladov2019-01-031-1/+9
|
* Merge #409bors[bot]2019-01-031-0/+79
|\ | | | | | | | | | | | | | | 409: Add Analysis#teype_of test r=matklad a=h-michael Co-authored-by: Hirokazu Hata <[email protected]>
| * Deive type_of test from testsHirokazu Hata2019-01-032-17/+80
| |
| * Remove unnecessary mock functionsHirokazu Hata2019-01-031-27/+1
| |
| * Add Analysis#teype_of testHirokazu Hata2019-01-032-2/+44
| |
* | docsAleksey Kladov2019-01-032-3/+33
| |
* | use LocalPtr in navigation targetAleksey Kladov2019-01-033-6/+12
| |
* | use LocalSyntaxPtr for file symbolAleksey Kladov2019-01-033-53/+49
| |
* | move some logic to navigation targetAleksey Kladov2019-01-033-113/+127
| |