Skip to main content Module rmeta Copy item path Source use std::marker::PhantomData ; π use std::mem::size_of ; π use std::num::NonZero ; π use std::rc::Rc ; π use decoder::LazyDecoder ; π pub(crate) use decoder::CrateMetadata ; π pub(crate) use decoder::CrateNumMap ; π pub(crate) use decoder::MetadataBlob ; π pub(crate) use decoder::TargetModifiers ; π use def_path_hash_map::DefPathHashMapRef ; π use encoder::EncodeContext ; π pub use encoder::EncodedMetadata ;pub use encoder::encode_metadata ;pub use encoder::rendered_const ;pub(crate) use parameterized::ParameterizedOverTcx ; π use rustc_abi::FieldIdx ; π use rustc_abi::ReprOptions ; π use rustc_abi::VariantIdx ; π use rustc_ast as ast; π use rustc_attr_ir::lang_items::LangItem ; π use rustc_attr_ir::Attribute ; π use rustc_attr_ir::ConstStability ; π use rustc_attr_ir::DefaultBodyStability ; π use rustc_attr_ir::Deprecation ; π use rustc_attr_ir::Stability ; π use rustc_attr_ir::StrippedCfgItem ; π use rustc_crate_store::CrateDepKind ; π use rustc_crate_store::ForeignModule ; π use rustc_crate_store::LinkagePreference ; π use rustc_crate_store::NativeLib ; π use rustc_data_structures::fingerprint::Fingerprint ; π use rustc_data_structures::fx::FxHashMap ; π use rustc_data_structures::svh::Svh ; π use rustc_hir as hir; π use rustc_hir::PreciseCapturingArgKind ; π use rustc_hir::def::CtorKind ; π use rustc_hir::def::DefKind ; π use rustc_hir::def::MacroKinds ; π use rustc_hir::def_id::CRATE_DEF_INDEX ; π use rustc_hir::def_id::CrateNum ; π use rustc_hir::def_id::DefId ; π use rustc_hir::def_id::DefIdMap ; π use rustc_hir::def_id::DefIndex ; π use rustc_hir::def_id::DefPathHash ; π use rustc_hir::def_id::LOCAL_CRATE ; π use rustc_hir::def_id::LocalDefId ; π use rustc_hir::def_id::StableCrateId ; π use rustc_hir::definitions::DefKey ; π use rustc_index::bit_set::DenseBitSet ; π use rustc_index::Idx ; π use rustc_index::IndexVec ; π use rustc_macros::BlobDecodable ; π use rustc_macros::Decodable ; π use rustc_macros::Encodable ; π use rustc_macros::LazyDecodable ; π use rustc_macros::MetadataEncodable ; π use rustc_macros::TyDecodable ; π use rustc_macros::TyEncodable ; π use rustc_middle::middle::codegen_fn_attrs::CodegenFnAttrs ; π use rustc_middle::middle::debugger_visualizer::DebuggerVisualizerFile ; π use rustc_middle::middle::deduced_param_attrs::DeducedParamAttrs ; π use rustc_middle::middle::exported_symbols::ExportedSymbol ; π use rustc_middle::middle::exported_symbols::SymbolExportInfo ; π use rustc_middle::middle::lib_features::FeatureStability ; π use rustc_middle::middle::resolve::AmbigModChild ; π use rustc_middle::middle::resolve::DocLinkResMap ; π use rustc_middle::middle::resolve::ModChild ; π use rustc_middle::middle::resolve_bound_vars::ObjectLifetimeDefault ; π use rustc_middle::mir ; π use rustc_middle::mir::ConstValue ; π use rustc_middle::ty::fast_reject::SimplifiedType ; π use rustc_middle::ty ; π use rustc_middle::ty::Ty ; π use rustc_middle::ty::TyCtxt ; π use rustc_middle::util::Providers ; π use rustc_serialize::opaque::FileEncoder ; π use rustc_session::config::mitigation_coverage::DeniedPartialMitigation ; π use rustc_session::config::SymbolManglingVersion ; π use rustc_session::config::TargetModifier ; π use rustc_span::edition::Edition ; π use rustc_span::hygiene::DecodedSyntaxContext ; π use rustc_span::hygiene::ExpnIndex ; π use rustc_span::hygiene::MacroKind ; π use rustc_span::hygiene::SyntaxContextKey ; π use rustc_span ; π use rustc_span::ExpnData ; π use rustc_span::ExpnHash ; π use rustc_span::ExpnId ; π use rustc_span::Ident ; π use rustc_span::Span ; π use rustc_span::Symbol ; π use rustc_target::spec::PanicStrategy ; π use rustc_target::spec::TargetTuple ; π use table::TableBuilder ; π use crate::eii::EiiMapEncodedKeyValue ; π use crate::rmeta::parameterized::EncodeFrom ; π use crate::rmeta::remapped_def_id::RemappedRawDefId ; π decoder π def_path_hash_map π encoder π parameterized π remapped_def_id π table π define_tables π Define LazyTables and TableBuilders at the same time. AttrFlags CrateDep π A dependency record, as stored in the hashed CrateRoot . CrateHeader π Serialized crate metadata. CrateRoot π Serialized .rmeta data for a crate. CrateRootUnhashed π A separate struct for extra metadata that must be encoded after
the main crate hash is finalized. IncoherentImpls π LazyArray π A list of lazily-decoded values. LazyTable π A list of lazily-decoded values, with the added capability of random access. LazyTables π LazyValue π A value of type T referred to by its absolute position
in the metadata, and which can be decoded lazily. LocalDefsRemapping π ProcMacroData π RemappedLocalDefId π RemappedLocalExpnIndex π RemappedSyntaxContext π SpanTag π A span tag byte encodes a bunch of data, so that we can cut out a few extra bytes from span
encodings (which are very common, for example, libcore has ~650,000 unique spans and over 1.1
million references to prior-written spans). TableBuilders π TableWriter π Helper struct for writing values into TableBuilders . TraitImpls π VariantData π LazyState π Encoding / decoding state for Lazys (LazyValue, LazyArray, and LazyTable). ProcMacroKind SpanKind π CRATE_HASH_LEN π CRATE_HASH_OFFSET π METADATA_HEADER Metadata header which includes METADATA_VERSION. METADATA_VERSION π 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 rustc_version(). ROOT_POS_LEN π ROOT_POS_OFFSET π Fixed-size fields encoded immediately after METADATA_HEADER, in order:
CrateRoot position (u64), CrateRootUnhashed position (u64), crate hash
(Fingerprint/SVH), then the variable-length rustc version string. SYMBOL_OFFSET π SYMBOL_PREDEFINED π SYMBOL_STR π UNHASHED_POS_LEN π UNHASHED_POS_OFFSET π VERSION_OFFSET π provide rustc_version π ExpnDataTable π ExpnHashTable π SyntaxContextTable π