rust/src/librustc_metadata
bors c80c31a502 Auto merge of #38053 - eddyb:lazy-9, r=nikomatsakis
[9/n] rustc: move type information out of AdtDef and TraitDef.

_This is part of a series ([prev](https://github.com/rust-lang/rust/pull/37688) | [next]()) of patches designed to rework rustc into an out-of-order on-demand pipeline model for both better feature support (e.g. [MIR-based](https://github.com/solson/miri) early constant evaluation) and incremental execution of compiler passes (e.g. type-checking), with beneficial consequences to IDE support as well.
If any motivation is unclear, please ask for additional PR description clarifications or code comments._

<hr>

Both `AdtDef` and `TraitDef` contained type information (field types, generics and predicates) which was required to create them, preventing their use before that type information exists, or in the case of field types, *mutation* was required, leading to a variance-magicking implementation of `ivar`s.

This PR takes that information out and the resulting cleaner setup could even eventually end up merged with HIR, because, just like `AssociatedItem` before it, there's no dependency on types anymore.
(With one exception, variant discriminants should probably be moved into their own map later.)
2016-12-02 15:06:36 +00:00
..
astencode.rs revamp Visitor with a single method for controlling nested visits 2016-11-29 13:04:27 +01:00
Cargo.toml rustc: Rename rustc_macro to proc_macro 2016-10-06 11:07:23 -07:00
creader.rs Avoid loading needless proc-macro dependencies. 2016-11-28 03:37:02 +00:00
cstore.rs Avoid loading needless proc-macro dependencies. 2016-11-28 03:37:02 +00:00
cstore_impl.rs Auto merge of #38053 - eddyb:lazy-9, r=nikomatsakis 2016-12-02 15:06:36 +00:00
decoder.rs Auto merge of #38053 - eddyb:lazy-9, r=nikomatsakis 2016-12-02 15:06:36 +00:00
diagnostics.rs Fix error explanation formatting 2016-11-26 21:20:20 +03:00
encoder.rs Auto merge of #38053 - eddyb:lazy-9, r=nikomatsakis 2016-12-02 15:06:36 +00:00
index.rs run rustfmt on librustc_metadata folder 2016-10-25 21:53:11 +05:30
index_builder.rs Improve macro reexports. 2016-11-10 10:04:24 +00:00
lib.rs Update the bootstrap compiler 2016-11-30 10:38:08 -08:00
locator.rs Delay error reporting of filename mismatch. 2016-11-24 22:26:35 +00:00
schema.rs Auto merge of #38053 - eddyb:lazy-9, r=nikomatsakis 2016-12-02 15:06:36 +00:00