aboutsummaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
* Use HIR Expr for type inferenceFlorian Diebold2019-01-0610-342/+308
| | | | | 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
|
* Merge #440bors[bot]2019-01-064-2/+140
|\ | | | | | | | | | | | | | | | | | | 440: Implement type inference for boolean operators r=flodiebold a=marcusklaas Tried implementing the easiest part of https://github.com/rust-analyzer/rust-analyzer/issues/390. Hope this is somewhat close to what the intent of the issue was. Found it surprisingly easy to find my way around the repository - it's well organized! Very grateful for any pointers. Co-authored-by: Marcus Klaas de Vries <[email protected]>
| * Touch up type inference for boolean operatorsMarcus Klaas de Vries2019-01-066-43/+93
| | | | | | | | | | Also try to infer its subexpressions and set type expectations whenever possible.
| * Implement type inference for boolean operatorsMarcus Klaas de Vries2019-01-056-4/+92
| |
* | kill module sourceAleksey Kladov2019-01-068-194/+156
| |
* | move submodule computationt to module_treeAleksey Kladov2019-01-064-53/+39
| |
* | fix the testAleksey Kladov2019-01-061-2/+2
| |
* | fix after rebaseAleksey Kladov2019-01-061-1/+2
| |
* | flatten module structureAleksey Kladov2019-01-0613-436/+431
| |
* | adjust commentsAleksey Kladov2019-01-062-5/+8
| |
* | fix ra_analysis to work with the new APIAleksey Kladov2019-01-064-7/+12
| |
* | split module source into decl/definAleksey Kladov2019-01-066-32/+106
| |
* | kill old moduleAleksey Kladov2019-01-067-233/+66
| |
* | add parent & resolve_pathAleksey Kladov2019-01-064-5/+67
| |
* | make source cancelableAleksey Kladov2019-01-061-2/+2
| |
* | make deps cancelableAleksey Kladov2019-01-062-3/+3
| |
* | fix testsAleksey Kladov2019-01-064-20/+42
| |
* | switch source-binders to ModuleAleksey Kladov2019-01-062-9/+20
| |
* | Start code_model::ModuleAleksey Kladov2019-01-064-7/+83
| |
* | move crate to code_model_apiAleksey Kladov2019-01-063-21/+34
| |
* | Merge #441bors[bot]2019-01-0620-254/+1150
|\ \ | | | | | | | | | | | | | | | | | | | | | 441: hir::Expr r=matklad a=flodiebold Still a bit to do, but I already adapted `FnScopes` and thought I'd get feedback already. Co-authored-by: Florian Diebold <[email protected]>
| * | Add fn signature queryFlorian Diebold2019-01-068-7/+86
| | |
| * | Various small code review improvementsFlorian Diebold2019-01-053-26/+27
| | |
| * | Make FnScopes use hir::ExprFlorian Diebold2019-01-0513-313/+533
| | | | | | | | | | | | | | | | | | 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-059-4/+542
| | |
| * | Add test for invalidation of inferred types when typing inside functionFlorian Diebold2019-01-052-0/+58
| |/ | | | | | | This currently fails, but should work once we have hir::Expr.
* / split_import intention correctly works with use treesAleksey Kladov2019-01-061-1/+13
|/
* 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-052-3/+9
|
* 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-054-67/+83
|
* wipAleksey Kladov2019-01-051-0/+26
|
* Merge #414bors[bot]2019-01-051-2/+25
|\ | | | | | | | | | | | | | | 414: textDocument/hover returns both type name and doc_text r=matklad a=h-michael implement #389 Co-authored-by: Hirokazu Hata <[email protected]>
| * Use both type_of and doc_text_forHirokazu Hata2019-01-051-14/+25
| |
| * Return type name when doc_text_for returns nothingHirokazu Hata2019-01-031-0/+12
| |
* | change visibility can change pub to pub(crate)Aleksey Kladov2019-01-052-2/+48
| |
* | split import assistAleksey Kladov2019-01-054-0/+126
| |
* | Merge #427bors[bot]2019-01-051-2/+58
|\ \ | | | | | | | | | | | | | | | | | | | | | 427: Remove extra space when joining lines in use items r=matklad a=alanhdu Fixes #423. Co-authored-by: Alan Du <[email protected]>
| * | Fix join_lines use_items right w/ and w/o commaAlan Du2019-01-051-3/+22
| | |
| * | Address join lines use items right }Alan Du2019-01-051-3/+21
| | |
| * | Remove extra space when joining lines in use itemsAlan Du2019-01-041-0/+19
| | |
* | | Merge #370bors[bot]2019-01-0426-62/+548
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-043-3/+3
| | | |