aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir/src
Commit message (Collapse)AuthorAgeFilesLines
* refactor if-let loweringAleksey Kladov2019-08-071-19/+25
| | | | mainly to get rid of unwraps
* refactor if loweringAleksey Kladov2019-08-071-17/+14
|
* Merge #1634bors[bot]2019-08-042-2/+47
|\ | | | | | | | | | | | | | | | | | | 1634: Implement .await completion for futures r=flodiebold a=eupn Closes #1263 with completion for `.await` syntax for types that are implementing `std::future::Future` trait. r? @flodiebold Co-authored-by: Evgenii P <[email protected]>
| * rustfmtEvgenii P2019-08-041-3/+1
| |
| * Idiomatic returnEvgenii P2019-08-041-1/+1
| |
| * Employ early return pattern moreEvgenii P2019-08-041-10/+8
| |
| * source_binder.rs: fix order of importsEvgenii P2019-08-041-9/+10
| |
| * Use std::future::Future trait from stdlibEvgenii P2019-08-031-21/+36
| |
| * do fixup: remove unused importEvgenii P2019-08-021-1/+1
| |
| * Relax trait solving more for completionEvgenii P2019-08-021-7/+1
| |
| * Use future lang item instead of hardcoded std::future::FutureEvgenii P2019-08-021-31/+10
| |
| * rustfmtEvgenii P2019-08-022-13/+22
| |
| * Implement completion for the .await syntaxEvgenii P2019-08-022-1/+52
| |
* | Resolve out of line modules inside inline module with attribute pathAlexander Andreev2019-08-033-28/+70
|/ | | | | Fixed #1510 Fixed #1529
* Merge #1604bors[bot]2019-07-291-11/+15
|\ | | | | | | | | | | | | | | 1604: Fix failing type interference for floating point literal r=matklad a=theotherphil Fixes https://github.com/rust-analyzer/rust-analyzer/issues/1592 Co-authored-by: Phil Ellison <[email protected]>
| * Move assist test, add literal type inference testPhil Ellison2019-07-291-11/+15
| |
* | Fixed request changes.Alexander Andreev2019-07-291-9/+19
| |
* | Added resolve modules inside inline moduleAlexander Andreev2019-07-292-54/+147
|/ | | | #1510
* show local variable types in completionEkaterina Babshukova2019-07-231-0/+8
|
* Merge #1570bors[bot]2019-07-211-4/+2
|\ | | | | | | | | | | | | | | 1570: switch to upstream rowan's API r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * streamline APIAleksey Kladov2019-07-211-4/+2
| |
* | provide completion in struct patternsEkaterina Babshukova2019-07-213-10/+23
|/
* Merge #1562bors[bot]2019-07-204-0/+87
|\ | | | | | | | | | | | | | | | | 1562: Continue support for .await r=matklad a=unrealhoang - add await expr to ast and HIR Expr - infer type for `.await` Co-authored-by: Unreal Hoang <[email protected]>
| * infer type for awaitUnreal Hoang2019-07-203-2/+78
| | | | | | | | by projecting inner_ty to Future::Output alias
| * add await expr to astUnreal Hoang2019-07-202-0/+11
| |
* | rename range -> text_rangeAleksey Kladov2019-07-203-3/+3
| |
* | move debug_dump to fmt::DebugAleksey Kladov2019-07-201-1/+1
|/
* flip syntax text to use internal iterationAleksey Kladov2019-07-191-1/+10
|
* minorAleksey Kladov2019-07-191-5/+1
|
* cleanup castsAleksey Kladov2019-07-192-9/+11
|
* several highlighting cleanupsAleksey Kladov2019-07-191-2/+13
| | | | | | * make stuff more type-safe by using `BindPat` instead of just `Pat` * don't add `mut` into binding hash * reset shadow counter when we enter a function
* migrate ra_hir to the new rowanAleksey Kladov2019-07-1921-209/+205
|
* use Parse in mbeAleksey Kladov2019-07-182-9/+9
|
* highlight mutable variables differentlyEkaterina Babshukova2019-07-181-0/+1
|
* use more correct phantom types for ptrsAleksey Kladov2019-07-181-1/+1
|
* Switch to Chalk master, without fuelFlorian Diebold2019-07-151-1/+1
|
* Remove blacklist, instead mark `Sized` as non-enumerableFlorian Diebold2019-07-151-17/+3
| | | | | This seems to be enough to prevent hanging in rust-analyzer, Chalk and the rustc repo.
* Cargo update, including updating ChalkFlorian Diebold2019-07-141-0/+2
|
* Have InferenceContext contain an InferenceResult instead of duplicating all ↵Florian Diebold2019-07-141-36/+19
| | | | fields
* Some renamings for clarityFlorian Diebold2019-07-148-24/+27
|
* Fixed request commentsAlexander Andreev2019-07-142-66/+72
|
* Fixed commentsAlexander Andreev2019-07-131-2/+2
|
* More resolution modules with attribute pathAlexander Andreev2019-07-132-4/+521
| | | | #1211
* complete fields in enum variantsEkaterina Babshukova2019-07-124-1/+28
|
* make Parse fields privateAleksey Kladov2019-07-124-5/+6
| | | | this is in preparation for the new rowan API
* fix profile nameAleksey Kladov2019-07-091-1/+1
|
* Merge #1515bors[bot]2019-07-0910-117/+285
|\ | | | | | | | | | | | | | | | | | | | | | | 1515: Trait environment r=matklad a=flodiebold This adds the environment, i.e. the set of `where` clauses in scope, when solving trait goals. That means that e.g. in ```rust fn foo<T: SomeTrait>(t: T) {} ``` , we are able to complete methods of `SomeTrait` on the `t`. This affects the trait APIs quite a bit (since every method that needs to be able to solve for some trait needs to get this environment somehow), so I thought I'd do it rather sooner than later ;) Co-authored-by: Florian Diebold <[email protected]>
| * Unify `normalize` and `implements` to simplify codeFlorian Diebold2019-07-088-105/+66
| |
| * Use environment for associated type normalization as wellFlorian Diebold2019-07-087-20/+52
| |
| * Start handling environment in trait resolutionFlorian Diebold2019-07-086-14/+103
| | | | | | | | | | I.e. if we are inside a function with some where clauses, we assume these where clauses hold.