rustc_session/
lib.rs

1// tidy-alphabetical-start
2#![allow(internal_features)]
3#![feature(default_field_values)]
4#![feature(iter_intersperse)]
5#![feature(let_chains)]
6#![feature(rustc_attrs)]
7// To generate CodegenOptionsTargetModifiers and UnstableOptionsTargetModifiers enums
8// with macro_rules, it is necessary to use recursive mechanic ("Incremental TT Munchers").
9#![recursion_limit = "256"]
10// tidy-alphabetical-end
11
12pub mod errors;
13
14pub mod utils;
15pub use lint::{declare_lint, declare_lint_pass, declare_tool_lint, impl_lint_pass};
16pub use rustc_lint_defs as lint;
17pub mod parse;
18
19pub mod code_stats;
20#[macro_use]
21pub mod config;
22pub mod cstore;
23pub mod filesearch;
24mod options;
25pub mod search_paths;
26
27mod session;
28pub use session::*;
29
30pub mod output;
31
32pub use getopts;
33
34rustc_fluent_macro::fluent_messages! { "../messages.ftl" }
35
36/// Requirements for a `StableHashingContext` to be used in this crate.
37/// This is a hack to allow using the `HashStable_Generic` derive macro
38/// instead of implementing everything in `rustc_middle`.
39pub trait HashStableContext: rustc_ast::HashStableContext + rustc_hir::HashStableContext {}