Crate stable_mir
source ·Expand description
The WIP stable interface to rustc internals.
For more information see https://github.com/rust-lang/project-stable-mir
Note
This API is still completely unstable and subject to change.
This crate shall contain all type definitions and APIs that we expect third-party tools to invoke to interact with the compiler.
The goal is to eventually be published on crates.io.
Modules
Structs
- A unique identification number for each provenance
- Holds information about a crate.
- Holds information about an item in the crate. For now, it only stores the item DefId. Use functions inside
rustc_internal
module to use this item. - A unique identification number for each item accessible for the current compilation unit.
- A type that provides internal information but that can still be used for debug purpose.
Enums
- An error type used to represent an error that has already been reported by the compiler.
Statics
- TLV 🔒
Traits
Functions
- Retrieve all items in the local crate that have a MIR associated with them.
- Return the function where execution starts if the current crate defines that. This is usually
main
, but could bestart
if the crate is a no-std crate. - Try to find a crate with the given name.
- Try to find a crate with the given name.
- Access to the local crate.
- Loads the current context and calls a function with it. Do not nest these, as that will ICE.
Type Aliases
- A list of crate items.
- The number that identifies a crate.
- A list of impl trait decls.
- Use String for now but we should replace it.
- A list of trait decls.