Module rustc::middle::cstore [] [src]

🔬 This is a nightly-only experimental API. (rustc_private)

this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?

the rustc crate store interface. This also includes types that are mostly used as a part of that interface, but these should probably get a better home if someone can find one.

Reexports

pub use self::NativeLibraryKind::*;

Structs

CrateSource [
Experimental
]

Where a crate came from on the local filesystem. One of these three options must be non-None.

DummyCrateStore [
Experimental
]

A dummy crate store that does not support any non-local crates, for test purposes.

EncodedMetadata [
Experimental
]
ExternBodyNestedBodies [
Experimental
]
ExternConstBody [
Experimental
]
ExternCrate [
Experimental
]
LinkMeta [
Experimental
]
NativeLibrary [
Experimental
]

Enums

DepKind [
Experimental
]
LibSource [
Experimental
]
LinkagePreference [
Experimental
]
LoadedMacro [
Experimental
]
NativeLibraryKind [
Experimental
]

Traits

CrateLoader [
Experimental
]
CrateStore [
Experimental
]

A store of Rust crates, through with their metadata can be accessed.

MetadataLoader [
Experimental
]

The backend's way to give the crate store access to the metadata in a library. Note that it returns the raw metadata bytes stored in the library file, whether it is compressed, uncompressed, some weird mix, etc. rmeta files are backend independent and not handled here.

Functions

used_crates [
Experimental
]
validate_crate_name [
Experimental
]