0f573a0c54
Make lowering a query Split from https://github.com/rust-lang/rust/pull/88186. This PR refactors the relationship between lowering and the resolver outputs in order to make lowering itself a query. In a first part, lowering is changed to avoid modifying resolver outputs, by maintaining its own data structures for creating new `NodeId`s and so. Then, the `TyCtxt` is modified to allow creating new `LocalDefId`s from inside it. This is done by: - enclosing `Definitions` in a lock, so as to allow modification; - creating a query `register_def` whose purpose is to declare a `LocalDefId` to the query system. See `TyCtxt::create_def` and `TyCtxt::iter_local_def_id` for more detailed explanations of the design. |
||
---|---|---|
.. | ||
nonstandard_style | ||
array_into_iter.rs | ||
builtin.rs | ||
context.rs | ||
early.rs | ||
enum_intrinsics_non_enums.rs | ||
expect.rs | ||
hidden_unicode_codepoints.rs | ||
internal.rs | ||
late.rs | ||
levels.rs | ||
lib.rs | ||
methods.rs | ||
non_ascii_idents.rs | ||
non_fmt_panic.rs | ||
nonstandard_style.rs | ||
noop_method_call.rs | ||
pass_by_value.rs | ||
passes.rs | ||
redundant_semicolon.rs | ||
tests.rs | ||
traits.rs | ||
types.rs | ||
unused.rs |