Move EncodedMetadata to rustc_metadata.
This commit is contained in:
parent
df54d3980b
commit
b244b98e7c
17 changed files with 39 additions and 32 deletions
|
@ -30,5 +30,4 @@ pub mod creader;
|
|||
pub mod dynamic_lib;
|
||||
pub mod locator;
|
||||
|
||||
pub use rmeta::encode_metadata;
|
||||
pub use rmeta::METADATA_HEADER;
|
||||
pub use rmeta::{encode_metadata, EncodedMetadata, METADATA_HEADER};
|
||||
|
|
|
@ -18,7 +18,7 @@ use rustc_hir::{AnonConst, GenericParamKind};
|
|||
use rustc_index::bit_set::GrowableBitSet;
|
||||
use rustc_index::vec::Idx;
|
||||
use rustc_middle::hir::map::Map;
|
||||
use rustc_middle::middle::cstore::{EncodedMetadata, ForeignModule, LinkagePreference, NativeLib};
|
||||
use rustc_middle::middle::cstore::{ForeignModule, LinkagePreference, NativeLib};
|
||||
use rustc_middle::middle::dependency_format::Linkage;
|
||||
use rustc_middle::middle::exported_symbols::{
|
||||
metadata_symbol_name, ExportedSymbol, SymbolExportLevel,
|
||||
|
@ -2101,6 +2101,23 @@ fn prefetch_mir(tcx: TyCtxt<'_>) {
|
|||
// will allow us to slice the metadata to the precise length that we just
|
||||
// generated regardless of trailing bytes that end up in it.
|
||||
|
||||
#[derive(Encodable, Decodable)]
|
||||
pub struct EncodedMetadata {
|
||||
raw_data: Vec<u8>,
|
||||
}
|
||||
|
||||
impl EncodedMetadata {
|
||||
#[inline]
|
||||
pub fn new() -> EncodedMetadata {
|
||||
EncodedMetadata { raw_data: Vec::new() }
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn raw_data(&self) -> &[u8] {
|
||||
&self.raw_data[..]
|
||||
}
|
||||
}
|
||||
|
||||
pub fn encode_metadata(tcx: TyCtxt<'_>) -> EncodedMetadata {
|
||||
let _prof_timer = tcx.prof.verbose_generic_activity("generate_crate_metadata");
|
||||
|
||||
|
|
|
@ -32,8 +32,8 @@ use std::num::NonZeroUsize;
|
|||
use decoder::DecodeContext;
|
||||
pub use decoder::{provide, provide_extern};
|
||||
crate use decoder::{CrateMetadata, CrateNumMap, MetadataBlob};
|
||||
pub use encoder::encode_metadata;
|
||||
use encoder::EncodeContext;
|
||||
pub use encoder::{encode_metadata, EncodedMetadata};
|
||||
use rustc_span::hygiene::SyntaxContextData;
|
||||
|
||||
mod decoder;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue