TableBuildersat the same time.
Serialized metadata for a crate. When compiling a proc-macro crate, we encode many of the
Lazy::empty(). This serves two purposes:
A list of lazily-decoded values.
A list of lazily-decoded values, with the added capability of random access.
A value of type T referred to by its absolute position in the metadata, and which can be decoded lazily.
On-disk representation of
DefId. This creates a type-safe way to enforce that we remap the CrateNum between the on-disk representation and the compilation session.
Encoding / decoding state for
Metadata header which includes
Metadata encoding version. N.B., increment this if you change the format of metadata such that the rustc version can’t be found to compare with