rustc_hir/
lib.rs

1//! HIR datatypes. See the [rustc dev guide] for more info.
2//!
3//! [rustc dev guide]: https://rustc-dev-guide.rust-lang.org/hir.html
4
5// tidy-alphabetical-start
6#![allow(internal_features)]
7#![cfg_attr(doc, recursion_limit = "256")] // FIXME(nnethercote): will be removed by #124141
8#![feature(associated_type_defaults)]
9#![feature(box_patterns)]
10#![feature(closure_track_caller)]
11#![feature(debug_closure_helpers)]
12#![feature(exhaustive_patterns)]
13#![feature(let_chains)]
14#![feature(never_type)]
15#![feature(rustc_attrs)]
16#![feature(variant_count)]
17// tidy-alphabetical-end
18
19extern crate self as rustc_hir;
20
21mod arena;
22pub mod def;
23pub mod def_path_hash_map;
24pub mod definitions;
25pub mod diagnostic_items;
26pub use rustc_span::def_id;
27mod hir;
28pub mod hir_id;
29pub mod intravisit;
30pub mod lang_items;
31pub mod pat_util;
32mod stable_hash_impls;
33mod target;
34pub mod weak_lang_items;
35
36#[cfg(test)]
37mod tests;
38
39#[doc(no_inline)]
40pub use hir::*;
41pub use hir_id::*;
42pub use lang_items::{LangItem, LanguageItems};
43pub use stable_hash_impls::HashStableContext;
44pub use target::{MethodKind, Target};
45
46arena_types!(rustc_arena::declare_arena);