[][src]Crate rustc

⚙️ This is an internal compiler API. (rustc_private)

This crate is being loaded from the sysroot, a permanently unstable location for private compiler dependencies. It is not intended for general use. Prefer using a public version of this crate from crates.io via Cargo.toml.

The "main crate" of the Rust compiler. This crate contains common type definitions that are used by the other crates in the rustc "family". Some prominent examples (note that each of these modules has their own README with further details).

For more information about how rustc works, see the rustc guide.

Note

This API is completely unstable and subject to change.

Modules

arenaInternal
dep_graphInternal
error_codesInternal
hirInternal

HIR datatypes. See the rustc guide for more info.

ichInternal

ICH - Incremental Compilation Hash

inferInternal

See the Book for more information.

lintInternal

Lints, aka compiler warnings.

macrosInternal
middleInternal
mirInternal

MIR datatypes and passes. See the rustc guide for more info.

queryInternal
sessionInternal
traitsInternal

Trait Resolution. See the rustc guide for more information on how this works.

tyInternal
utilInternal

Macros

BraceStructLiftImplInternal
BraceStructTypeFoldableImplInternal
CloneLiftImplsInternal
CloneTypeFoldableAndLiftImplsInternal
CloneTypeFoldableImplsInternal

Used for types that are Copy and which do not care arena allocated data (i.e., don't need to be folded).

EnumLiftImplInternal
EnumTypeFoldableImplInternal
TupleStructTypeFoldableImplInternal
__impl_decoder_methodsInternal
__impl_stable_hash_fieldInternal
arena_typesInternal

This declares a list of types which can be allocated by Arena.

bugInternal
declare_combined_early_lint_passInternal
declare_combined_late_lint_passInternal
declare_lintInternal

Declares a static item of type &'static Lint.

declare_lint_passInternal

Declares a type named $name which implements LintPass. To the right of => a comma separated list of Lint statics is given.

declare_tool_lintInternal
early_lint_methodsInternal
err_exhaustInternal
err_invalInternal
err_panicInternal
err_ubInternal
err_ub_formatInternal
err_unsupInternal
err_unsup_formatInternal
expand_combined_early_lint_pass_methodInternal
expand_combined_early_lint_pass_methodsInternal
expand_combined_late_lint_pass_methodInternal
expand_combined_late_lint_pass_methodsInternal
impl_arena_allocatable_decoderInternal
impl_arena_allocatable_decodersInternal
impl_lint_passInternal

Implements LintPass for $name with the given list of Lint statics.

impl_stable_hash_forInternal
impl_stable_hash_for_spannedInternal
implement_ty_decoderInternal
late_lint_methodsInternal
lint_arrayInternal

Declares a static LintArray and return it as an expression.

span_bugInternal
throw_exhaustInternal
throw_invalInternal
throw_panicInternal
throw_ubInternal
throw_ub_formatInternal
throw_unsupInternal
throw_unsup_formatInternal