aboutsummaryrefslogtreecommitdiff
path: root/crates/hir_def/src/body.rs
Commit message (Collapse)AuthorAgeFilesLines
* internal: move diagnostics to hirAleksey Kladov2021-05-251-10/+15
| | | | | | | | | | | | | | | | | | | | | | | The idea here is to eventually get rid of `dyn Diagnostic` and `DiagnosticSink` infrastructure altogether, and just have a `enum hir::Diagnostic` instead. The problem with `dyn Diagnostic` is that it is defined in the lowest level of the stack (hir_expand), but is used by the highest level (ide). As a first step, we free hir_expand and hir_def from `dyn Diagnostic` and kick the can up to `hir_ty`, as an intermediate state. The plan is then to move DiagnosticSink similarly to the hir crate, and, as final third step, remove its usage from the ide. One currently unsolved problem is testing. You can notice that the test which checks precise diagnostic ranges, unresolved_import_in_use_tree, was moved to the ide layer. Logically, only IDE should have the infra to render a specific range. At the same time, the range is determined with the data produced in hir_def and hir crates, so this layering is rather unfortunate. Working on hir_def shouldn't require compiling `ide` for testing.
* Cleanup importsAleksey Kladov2021-05-131-2/+2
|
* Reuse database in LowerCtxJonas Schievink2021-05-061-1/+1
|
* Don't store call-site text offsets in hygiene infoJonas Schievink2021-05-061-4/+4
|
* hir_ty: keep body::Expander in TyLoweringContextcynecx2021-04-181-10/+8
|
* hir_def: refactor expand_macro_type and cleanupscynecx2021-04-171-56/+16
|
* hir_ty: Expand macros at type positioncynecx2021-04-171-14/+60
|
* Merge #8324bors[bot]2021-04-041-1/+11
|\ | | | | | | | | | | | | | | | | | | 8324: Add `Body::shrink_to_fit` r=jonas-schievink a=jonas-schievink Saves ~15 MB bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * Add `Body::shrink_to_fit`Jonas Schievink2021-04-041-1/+11
| |
* | Only remember blocks that have a DefMapJonas Schievink2021-04-041-1/+1
|/
* Access a body's block def maps via a methodJonas Schievink2021-04-041-1/+11
|
* Follow established ErrorEmitted patternBrandon2021-03-171-5/+2
|
* Fix missing unresolved macro diagnostic in function bodyBrandon2021-03-161-8/+11
|
* Simplify source maps for fieldsAleksey Kladov2021-03-151-3/+16
|
* Remove `item_scope` field from `Body`Jonas Schievink2021-03-091-5/+2
|
* Store inner `BlockId`s in `Body`Jonas Schievink2021-03-091-1/+3
|
* Use upstream cov-markLaurențiu Nicola2021-03-081-2/+1
|
* Rename a few `crate_def_map`s to `def_map`Jonas Schievink2021-03-061-2/+2
| | | | These could all be block `DefMap`s instead of crate-level `DefMap`s
* For unresolved macros, hightlight only the last segmentAleksey Kladov2021-02-281-1/+1
|
* Expander: store a LocalModuleId, not ModuleIdJonas Schievink2021-02-041-7/+4
| | | | | It already stores the DefMap containing the module, so having a full ModuleId is unnecessary and makes it easier to mix things up
* Use block_def_map in body loweringJonas Schievink2021-02-031-13/+6
|
* Revert "Use block_def_map in body lowering"Jonas Schievink2021-02-021-6/+13
|
* Use block_def_map in body loweringJonas Schievink2021-02-011-13/+6
|
* add more countsAleksey Kladov2021-01-271-0/+2
|
* Obtain `ModuleId`'s `DefMap` through a methodJonas Schievink2021-01-221-1/+1
|
* Revert "Make use of `block_def_map` in body lowering"Jonas Schievink2021-01-211-6/+13
|
* Make use of `block_def_map` in body loweringJonas Schievink2021-01-211-13/+6
| | | | | Removes the `local_scope` hack from `Expander` in favor of tracking the `DefMap` in use during body lowering
* DefMap: hide remaining crate-visible fieldsJonas Schievink2021-01-201-1/+1
|
* Rename `CrateDefMap` to `DefMap`Jonas Schievink2021-01-181-2/+2
|
* Remove map module from la-arena public APIAramis Razzaghipour2021-01-151-1/+1
| | | | | | It’s unlikely that more items will be added to the module, so it’s simpler for users if `ArenaMap` is re-exported and the module made private.
* prepare to publish el libro de arenaAleksey Kladov2021-01-141-1/+1
|
* Track labels in the HIRLukas Wirth2020-12-241-1/+23
|
* Refactor attributes API to allow handling cfg_attrJonas Schievink2020-12-181-8/+9
|
* Properly decrement recursion count in ExpanderLukas Wirth2020-12-091-2/+2
|
* Propagate eager expansion errorsJonas Schievink2020-12-031-7/+13
|
* Emit macro diagnostics when lowering bodiesJonas Schievink2020-11-301-23/+50
|
* Diagnose #[cfg]s in bodiesJonas Schievink2020-10-231-42/+21
|
* Improve readabilityAleksey Kladov2020-10-171-2/+4
|
* Rename ra_hir_def -> hir_defAleksey Kladov2020-08-131-0/+360