Crate rustc_session
source ·Re-exports
pub use crate::code_stats::DataTypeKind;
pub use crate::code_stats::FieldInfo;
pub use crate::code_stats::FieldKind;
pub use crate::code_stats::SizeKind;
pub use crate::code_stats::VariantInfo;
pub use rustc_lint_defs as lint;
pub use getopts;
Modules
- Some facilities for tracking how codegen-units are reused during incremental compilation. This is used for incremental compilation tests and debug output.
- Contains infrastructure for configuring the compiler, including parsing command-line options.
- 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.
- A module for searching for libraries
- options 🔒
- Related to out filenames of compilation (e.g. save analysis, binaries).
- Contains
ParseSess
which holds state living beyond what oneParser
might. It also serves as an input to the parser itself. - session 🔒
Macros
- Declares a static item of type
&'static Lint
. - Declares a type named
$name
which implementsLintPass
. To the right of=>
a comma separated list ofLint
statics is given. - Implements
LintPass for $ty
with the given list ofLint
statics.
Structs
- A syntax-level representation of an attribute.
- A wrapper around an
Handler
that is used for early error emissions. - New-type wrapper around
usize
for representing limits. Ensures that comparisons against limits are consistent throughout the compiler. - Represents the data associated with a compilation session for a single crate.
- A
StableCrateId
is a 64-bit hash of a crate name, together with all-Cmetadata
arguments, and some other data. It is toCrateNum
whatDefPathHash
is toDefId
. It is stable across compilation sessions.
Enums
- The behavior of the CTFE engine when an error occurs with regards to backtraces.
- Holds data on the current incremental compilation session, if there is one.
Statics
- Raw content of Fluent resource for this crate, generated by
fluent_messages
macro, imported byrustc_driver
to include all crates’ resources in one bundle.
Traits
- Requirements for a
StableHashingContext
to be used in this crate. This is a hack to allow using theHashStable_Generic
derive macro instead of implementing everything inrustc_middle
.