[−][src]Struct rustc_metadata::rmeta::CrateRoot

pub(crate) struct CrateRoot<'tcx> {
    name: Symbol,
    triple: TargetTriple,
    extra_filename: String,
    hash: Svh,
    disambiguator: CrateDisambiguator,
    panic_strategy: PanicStrategy,
    edition: Edition,
    has_global_allocator: bool,
    has_panic_handler: bool,
    has_default_lib_allocator: bool,
    plugin_registrar_fn: Option<DefIndex>,
    proc_macro_decls_static: Option<DefIndex>,
    proc_macro_stability: Option<Stability>,
    crate_deps: Lazy<[CrateDep]>,
    dylib_dependency_formats: Lazy<[Option<LinkagePreference>]>,
    lib_features: Lazy<[(Symbol, Option<Symbol>)]>,
    lang_items: Lazy<[(DefIndex, usize)]>,
    lang_items_missing: Lazy<[LangItem]>,
    diagnostic_items: Lazy<[(Symbol, DefIndex)]>,
    native_libraries: Lazy<[NativeLib]>,
    foreign_modules: Lazy<[ForeignModule]>,
    impls: Lazy<[TraitImpls]>,
    interpret_alloc_index: Lazy<[u32]>,
    tables: LazyTables<'tcx>,
    proc_macro_data: Option<Lazy<[DefIndex]>>,
    exported_symbols: Lazy<[(ExportedSymbol<'tcx>, SymbolExportLevel)], usize>,
    syntax_contexts: Lazy<Table<u32, Lazy<SyntaxContextData>>>,
    expn_data: Lazy<Table<u32, Lazy<ExpnData>>>,
    source_map: Lazy<[SourceFile]>,
    compiler_builtins: bool,
    needs_allocator: bool,
    needs_panic_runtime: bool,
    no_builtins: bool,
    panic_runtime: bool,
    profiler_runtime: bool,
    symbol_mangling_version: SymbolManglingVersion,
}

Fields

name: Symboltriple: TargetTripleextra_filename: Stringhash: Svhdisambiguator: CrateDisambiguatorpanic_strategy: PanicStrategyedition: Editionhas_global_allocator: boolhas_panic_handler: boolhas_default_lib_allocator: boolplugin_registrar_fn: Option<DefIndex>proc_macro_decls_static: Option<DefIndex>proc_macro_stability: Option<Stability>crate_deps: Lazy<[CrateDep]>dylib_dependency_formats: Lazy<[Option<LinkagePreference>]>lib_features: Lazy<[(Symbol, Option<Symbol>)]>lang_items: Lazy<[(DefIndex, usize)]>lang_items_missing: Lazy<[LangItem]>diagnostic_items: Lazy<[(Symbol, DefIndex)]>native_libraries: Lazy<[NativeLib]>foreign_modules: Lazy<[ForeignModule]>impls: Lazy<[TraitImpls]>interpret_alloc_index: Lazy<[u32]>tables: LazyTables<'tcx>proc_macro_data: Option<Lazy<[DefIndex]>>

The DefIndex's of any proc macros declared by this crate.

exported_symbols: Lazy<[(ExportedSymbol<'tcx>, SymbolExportLevel)], usize>syntax_contexts: Lazy<Table<u32, Lazy<SyntaxContextData>>>expn_data: Lazy<Table<u32, Lazy<ExpnData>>>source_map: Lazy<[SourceFile]>compiler_builtins: boolneeds_allocator: boolneeds_panic_runtime: boolno_builtins: boolpanic_runtime: boolprofiler_runtime: boolsymbol_mangling_version: SymbolManglingVersion

Implementations

impl<'_> CrateRoot<'_>[src]

pub(crate) fn is_proc_macro_crate(&self) -> bool[src]

pub(crate) fn name(&self) -> Symbol[src]

pub(crate) fn disambiguator(&self) -> CrateDisambiguator[src]

pub(crate) fn hash(&self) -> Svh[src]

pub(crate) fn triple(&self) -> &TargetTriple[src]

pub(crate) fn decode_crate_deps<'a>(
    &self,
    metadata: &'a MetadataBlob
) -> impl ExactSizeIterator<Item = CrateDep> + Captures<'a>
[src]

Trait Implementations

impl<'tcx, '__a> Decodable<DecodeContext<'__a, 'tcx>> for CrateRoot<'tcx>[src]

impl<'tcx, '__a> Encodable<EncodeContext<'__a, 'tcx>> for CrateRoot<'tcx>[src]

Auto Trait Implementations

impl<'tcx> !RefUnwindSafe for CrateRoot<'tcx>

impl<'tcx> !Send for CrateRoot<'tcx>

impl<'tcx> !Sync for CrateRoot<'tcx>

impl<'tcx> Unpin for CrateRoot<'tcx>

impl<'tcx> !UnwindSafe for CrateRoot<'tcx>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized, 
[src]

impl<T> Borrow<T> for T where
    T: ?Sized, 
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized, 
[src]

impl<'a, T> Captures<'a> for T where
    T: ?Sized, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.