aboutsummaryrefslogtreecommitdiff
path: root/crates/hir_def/src
Commit message (Collapse)AuthorAgeFilesLines
* Intern `TypeRef`s in the containing `ItemTree`Jonas Schievink2021-02-044-21/+67
|
* Expander: store a LocalModuleId, not ModuleIdJonas Schievink2021-02-042-14/+11
| | | | | It already stores the DefMap containing the module, so having a full ModuleId is unnecessary and makes it easier to mix things up
* Don't keep the parent DefMap alive via ArcJonas Schievink2021-02-045-36/+67
| | | | | This seems like it could easily leak a lot of memory since we don't currently run GC
* Split out ItemScope::dump from DefMap::dumpJonas Schievink2021-02-032-21/+26
|
* Merge #7546bors[bot]2021-02-032-0/+11
|\ | | | | | | | | | | | | | | 7546: Add newline between block and crate maps r=jonas-schievink a=jonas-schievink bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * Add newline between block and crate mapsJonas Schievink2021-02-032-0/+11
| |
* | Add a FIXME to ItemTreeJonas Schievink2021-02-031-0/+1
|/
* Update `DefMap` and `block_def_map` docsJonas Schievink2021-02-032-1/+25
|
* Test for name resolution with DefMap shortcutJonas Schievink2021-02-031-0/+33
|
* Shortcut `block_def_map` if there's no inner itemsJonas Schievink2021-02-035-11/+26
| | | | | This previously didn't work, but apparently only because of the wonky test setup
* Use body lowering for block_def_map testsJonas Schievink2021-02-033-68/+117
| | | | Removes the hacky and buggy custom lowering code
* Use block_def_map in body loweringJonas Schievink2021-02-035-25/+39
|
* Fix resolution of `crate` paths from within blocksJonas Schievink2021-02-022-2/+7
| | | | | They resolve to the crate root, not the DefMap's root module (which can be a block)
* Use the right `DefMap` when looking up modulesJonas Schievink2021-02-023-2/+20
|
* Revert "Use block_def_map in body lowering"Jonas Schievink2021-02-029-160/+95
|
* Shortcut `block_def_map` if there's no inner itemsJonas Schievink2021-02-011-2/+4
| | | | | This previously didn't work, but apparently only because of the wonky test setup
* Use body lowering for block_def_map testsJonas Schievink2021-02-013-68/+117
| | | | Removes the hacky and buggy custom lowering code
* Use block_def_map in body loweringJonas Schievink2021-02-015-25/+39
|
* Merge #7503bors[bot]2021-01-311-1/+9
|\ | | | | | | | | | | | | | | 7503: Return inner attributes of outline mod declarations in `attrs_query` r=jonas-schievink a=Veykril Co-authored-by: Lukas Wirth <[email protected]>
| * Return inner attributes of outline mod declarations in `attrs_query`Lukas Wirth2021-01-311-1/+9
| |
* | Honor #![macro_use] in mod source filesLukas Wirth2021-01-312-8/+23
|/
* Fix incorrect `FileId` and remove broken shortcutJonas Schievink2021-01-282-16/+9
| | | | | Apparently we were using the crate's root file instead of the file containing the block.
* block_def_map: add a few macro testsJonas Schievink2021-01-281-0/+63
|
* Update `original_module` when ascending `DefMap`sJonas Schievink2021-01-281-2/+5
|
* ItemTree: Treat items in `MacroStmts` as top-levelJonas Schievink2021-01-282-4/+32
|
* Fix legacy macro resolution in block expressionsJonas Schievink2021-01-272-1/+15
|
* add more countsAleksey Kladov2021-01-272-0/+4
|
* Traverse parent DefMap for `super` pathsJonas Schievink2021-01-252-9/+54
|
* Intern block locations and handle them in ModuleIdJonas Schievink2021-01-255-65/+104
|
* Merge #7426bors[bot]2021-01-258-63/+33
|\ | | | | | | | | | | | | | | | | | | | | 7426: Create all `ModuleId`s through a `DefMap` method r=jonas-schievink a=jonas-schievink `ModuleId` needs to be able to represent blocks, and only the associated `DefMap` will know how to construct that `ModuleId` bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * Create all `ModuleId`s through a `DefMap` methodJonas Schievink2021-01-258-63/+33
| | | | | | | | | | `ModuleId` needs to be able to represent blocks, and only the associated `DefMap` will know how to construct that `ModuleId`
* | Derive Default on ItemTreeLaurențiu Nicola2021-01-252-12/+3
|/
* Identify methods using functions ids rather than string namesPhil Ellison2021-01-231-0/+1
|
* Merge #7391bors[bot]2021-01-232-0/+24
|\ | | | | | | | | | | | | | | 7391: Fix error when using "extern crate self as" r=kazatsuyu a=kazatsuyu Fix #6957 Co-authored-by: kazatsuyu <[email protected]>
| * Add mark::check! and mark::hit!kazatsuyu2021-01-222-0/+2
| |
| * cargo fmtkazatsuyu2021-01-221-2/+3
| |
| * Fix error when using "extern crate self as"kazatsuyu2021-01-222-0/+21
| |
* | Make `ModuleId`'s `krate` field privateJonas Schievink2021-01-221-1/+9
| |
* | Obtain `ModuleId`'s `DefMap` through a methodJonas Schievink2021-01-2210-17/+27
| |
* | Fix broken link in intra-docDaiki Ihara2021-01-221-0/+13
|/
* Remove unused fieldJonas Schievink2021-01-211-4/+0
|
* Add test for path resolution bugJonas Schievink2021-01-211-8/+33
|
* Revert "Make use of `block_def_map` in body lowering"Jonas Schievink2021-01-213-19/+18
|
* Merge #7378bors[bot]2021-01-212-1/+12
|\ | | | | | | | | | | | | | | 7378: Include `countme` crate to count important data structures. r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * Include `countme` crate to count important data structures.Aleksey Kladov2021-01-212-1/+12
| |
* | Make use of `block_def_map` in body loweringJonas Schievink2021-01-213-18/+19
| | | | | | | | | | Removes the `local_scope` hack from `Expander` in favor of tracking the `DefMap` in use during body lowering
* | Remove unnecessary annotations from testsJonas Schievink2021-01-211-4/+0
|/
* Add test for nameres in nested blocksJonas Schievink2021-01-211-0/+29
|
* Add test that merges inner and outer namesJonas Schievink2021-01-211-0/+25
|
* Fix lowering with multiple block expressionsJonas Schievink2021-01-211-15/+23
|