aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir
Commit message (Collapse)AuthorAgeFilesLines
...
| * Add HIR for impl blocksFlorian Diebold2019-01-048-5/+225
| | | | | | | | | | | | | | | | | | 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.
| * Add test for self type inferenceFlorian Diebold2019-01-042-0/+23
| |
* | :arrow_up: salsaAleksey Kladov2019-01-041-1/+1
|/
* Rename ImplItem to ImplBlockFlorian Diebold2019-01-041-1/+1
| | | | | rustc uses the name ImplItem for items in impls, not the impl {} block itself, which could lead to confusion.
* remove id arenaAleksey Kladov2019-01-046-86/+24
|
* index stuff produced by macrosAleksey Kladov2019-01-033-5/+49
|
* hardcode vec macroAleksey Kladov2019-01-031-0/+18
|
* simplify runnablesAleksey Kladov2019-01-021-1/+1
|
* small renameAleksey Kladov2019-01-022-3/+3
|
* commentsAleksey Kladov2019-01-023-12/+35
|
* renameAleksey Kladov2019-01-022-2/+2
|
* move macro id to idsAleksey Kladov2019-01-015-40/+40
|
* move more stuff to idsAleksey Kladov2019-01-016-185/+183
|
* rename MFileId -> HirFileIdAleksey Kladov2019-01-0110-95/+131
|
* introduce ids moduleAleksey Kladov2019-01-012-14/+34
|
* add tests for macro generated itemsAleksey Kladov2019-01-011-1/+83
|
* add items from macros to modulesAleksey Kladov2019-01-011-12/+36
|
* wipAleksey Kladov2019-01-012-47/+49
|
* fix testsAleksey Kladov2019-01-013-2/+3
|
* use MFileAleksey Kladov2019-01-017-30/+62
|
* introduce MFileIdAleksey Kladov2019-01-011-0/+7
|
* work towards brining macros to nameresAleksey Kladov2019-01-012-3/+16
|
* save top-level macros in module itemsAleksey Kladov2019-01-012-13/+17
|
* hard-code expansion of query_groupAleksey Kladov2019-01-011-7/+37
|
* fix testsAleksey Kladov2019-01-012-2/+9
|
* renameAleksey Kladov2019-01-013-15/+15
|
* move more macros to hirAleksey Kladov2019-01-013-42/+113
|
* use macros database in analysisAleksey Kladov2019-01-012-6/+48
|
* introduce MacrosDatabaseAleksey Kladov2019-01-012-0/+58
|
* Make modules with tests runnableJan Jansen2018-12-311-0/+5
| | | | Fixes #154
* Add more docs in ty.rsFlorian Diebold2018-12-293-36/+61
| | | | | Also get rid of the indirection through query_definitions for the type-related queries.
* Missing return type means unit, not unknownFlorian Diebold2018-12-292-3/+7
|
* Implement type variablesFlorian Diebold2018-12-297-118/+385
| | | | | | | | | This will really become necessary when we implement generics, but even now, it allows us to reason 'backwards' to infer types of expressions that we didn't understand for some reason. We use ena, the union-find implementation extracted from rustc, to keep track of type variables.
* nameify structs&enumsAleksey Kladov2018-12-285-57/+43
|
* completion for enum variantsAleksey Kladov2018-12-281-0/+4
|
* simplifyAleksey Kladov2018-12-281-9/+4
|
* :arrow_up: salsaAleksey Kladov2018-12-281-1/+1
|
* remove FnIdAleksey Kladov2018-12-274-36/+21
|
* use names everywhereAleksey Kladov2018-12-272-12/+35
|
* dont leak Name details in testingAleksey Kladov2018-12-272-19/+62
|
* introduce known namesAleksey Kladov2018-12-274-29/+71
|
* introduce hir::NameAleksey Kladov2018-12-2710-50/+120
|
* add function to completion ctxAleksey Kladov2018-12-271-0/+1
|
* 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]>
* Bump arrayvec from 0.4.9 to 0.4.10dependabot[bot]2018-12-271-1/+1
| | | | | | | Bumps [arrayvec](https://github.com/bluss/arrayvec) from 0.4.9 to 0.4.10. - [Release notes](https://github.com/bluss/arrayvec/releases) - [Commits](https://github.com/bluss/arrayvec/compare/0.4.9...0.4.10) Signed-off-by: dependabot[bot] <[email protected]>
* Resolve field types lazilyFlorian Diebold2018-12-256-59/+75
| | | | 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-257-84/+180
|
* Implement reference / pointer typesFlorian Diebold2018-12-254-17/+116
| | | | | - parse them - infer types of & and * expressions
* Handle structs/enums with missing names a bit betterFlorian Diebold2018-12-252-20/+22
|
* CleanupFlorian Diebold2018-12-251-125/+37
|