aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir/src
Commit message (Collapse)AuthorAgeFilesLines
* Implement type inference for literals (WIP)Marcus Klaas de Vries2019-01-145-4/+139
|
* goto defenition works for type-inferred methodsAleksey Kladov2019-01-131-3/+22
|
* Fix tuple test caseHirokazu Hata2019-01-132-6/+35
|
* Implement tuple inferenceHirokazu Hata2019-01-132-1/+20
|
* Add infer tuple testHirokazu Hata2019-01-132-0/+17
|
*-. Merge #517 #518bors[bot]2019-01-131-3/+9
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 517: gracefully handle cycles in crate graph r=matklad a=matklad 518: Add an explanatory message when we use the Query fallback r=matklad a=DJMcNab Fixes https://github.com/rust-analyzer/rust-analyzer/issues/269. There is no good way to explain it for go_to_def, so I've just fallen back on to_vec. Co-authored-by: Aleksey Kladov <[email protected]> Co-authored-by: DJMcNab <[email protected]>
| * | gracefully handle cycles in crate graphAleksey Kladov2019-01-131-3/+9
| |/ | | | | | | | | rust-lang/rust has absolutely weird setup with rustc-workspace-shim, which leads to real cycles.
* / support ref-patternsAleksey Kladov2019-01-132-9/+34
|/
* args -> paramsFlorian Diebold2019-01-126-35/+35
|
* Small improvements from review commentsFlorian Diebold2019-01-123-20/+20
|
* Implement basic inherent method resolutionFlorian Diebold2019-01-1210-17/+308
|
* Fix assertion error in unification (hopefully)Florian Diebold2019-01-113-7/+50
| | | | | | | Currently, all types that we handle during inference need to be resolved as far as possible at the time. It's maybe too brittle of an invariant; I need to think how we can do this better. This should fix #484 though, I hope (if it's the same case as I managed to reproduce).
* actually produce missing def kindsAleksey Kladov2019-01-114-8/+82
|
* uncopypaste def sourcesAleksey Kladov2019-01-113-40/+26
|
* add missing def kindsAleksey Kladov2019-01-111-0/+20
|
* rename TreePtr -> TreeArcAleksey Kladov2019-01-118-30/+30
| | | | This is much clearer about the semantics
* envapsulate navigation target betterAleksey Kladov2019-01-113-2/+4
|
* Use name resolution for goto definitionFlorian Diebold2019-01-104-12/+70
|
* Merge #470bors[bot]2019-01-1010-38/+195
|\ | | | | | | | | | | | | | | | | | | 470: Type inference for enum variants r=flodiebold a=marcusklaas Opened a new PR instead of https://github.com/rust-analyzer/rust-analyzer/pull/461. Totally botched that one. I think I resolved all the issues mentioned there. Co-authored-by: Marcus Klaas de Vries <[email protected]>
| * Save variant names in EnumData to reduce needless queriesMarcus Klaas de Vries2019-01-103-29/+20
| | | | | | | | | | | | We already have their names when anyway, and when in all (current) situations where we're interested in an Enum's variants, we want their names.
| * Implement type inference for enum variantsMarcus Klaas de Vries2019-01-1010-37/+203
| |
* | introduce marking infrastructure for maintainable testsAleksey Kladov2019-01-104-1/+118
|/ | | | This also fixes a particular edge case in name resolution.
* Merge #475bors[bot]2019-01-103-52/+72
|\ | | | | | | | | | | | | | | | | | | | | 475: Show types of fields in completion r=matklad a=matklad ![image](https://user-images.githubusercontent.com/1711539/50910524-0f146200-143f-11e9-84d6-0ba80761cd89.png) r? @flodiebold Co-authored-by: Aleksey Kladov <[email protected]>
| * show field types in completionAleksey Kladov2019-01-093-52/+72
| |
* | implement RefUnwindSafeAleksey Kladov2019-01-101-1/+3
|/
* nicer trailing comma handling in typesAleksey Kladov2019-01-093-11/+15
|
* Merge #473bors[bot]2019-01-0915-48/+67
|\ | | | | | | | | | | | | | | 473: Partial typo fix r=matklad a=marcusklaas This fixes some typos. Mostly in documentation, but also some code is affected (`defenition` was used in a few method names). Co-authored-by: Marcus Klaas de Vries <[email protected]>
| * Fix typos in ARCHITECTURE.md and a number of cratesMarcus Klaas de Vries2019-01-0914-44/+63
| | | | | | | | specifically: gen_lsp_server, ra_arena, ra_cli, ra_db, ra_hir
| * Fix typo defenition -> definitionMarcus Klaas de Vries2019-01-083-4/+4
| |
* | more stable DefIds via bfs tree walkingAleksey Kladov2019-01-082-7/+31
| |
* | one more invalidation testAleksey Kladov2019-01-081-1/+32
| |
* | fix test namingAleksey Kladov2019-01-081-22/+22
| |
* | remove duplication in testsAleksey Kladov2019-01-081-55/+33
|/
* ra_db is independent from editorAleksey Kladov2019-01-082-1/+1
|
* move node at offset to aglo alreadyAleksey Kladov2019-01-082-3/+2
|
* move function to code_model_apiAleksey Kladov2019-01-089-144/+153
|
* remove FnSignatureInfo from hirAleksey Kladov2019-01-082-126/+3
|
* Fix name resolution across source rootsFlorian Diebold2019-01-083-19/+173
| | | | It was using the wrong name in that case.
* Fix use tree desugaringFlorian Diebold2019-01-082-1/+30
|
* Merge #458bors[bot]2019-01-084-9/+13
|\ | | | | | | | | | | | | | | 458: dont reexport module id r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * dont reexport module idAleksey Kladov2019-01-084-9/+13
| |
* | switch interner to use arenaAleksey Kladov2019-01-081-4/+4
|/
* minimize visibilityAleksey Kladov2019-01-081-1/+1
|
* move query impls to adtAleksey Kladov2019-01-083-25/+31
|
* move variant public api to apiAleksey Kladov2019-01-082-34/+28
|
* move variants to APIAleksey Kladov2019-01-083-29/+34
|
* minorAleksey Kladov2019-01-081-4/+4
|
* move enum to code_model_apiAleksey Kladov2019-01-083-29/+26
|
* move stuct to code_model_apiAleksey Kladov2019-01-083-22/+27
|
* Merge #455bors[bot]2019-01-082-16/+62
|\ | | | | | | | | | | | | | | 455: Import fixpoint loop for name resolution r=matklad a=flodiebold This implements reexports, so only the glob import part of #231 remains. Co-authored-by: Florian Diebold <[email protected]>