]>
Commit | Line | Data |
---|---|---|
ba9703b0 | 1 | //! This crates defines the type inference engine. |
74b04a01 | 2 | //! |
74b04a01 XL |
3 | //! - **Type inference.** The type inference code can be found in the `infer` module; |
4 | //! this code handles low-level equality and subtyping operations. The | |
cdc7bbd5 | 5 | //! type check pass in the compiler is found in the `rustc_typeck` crate. |
74b04a01 | 6 | //! |
ba9703b0 | 7 | //! For more information about how rustc works, see the [rustc dev guide]. |
74b04a01 | 8 | //! |
ba9703b0 | 9 | //! [rustc dev guide]: https://rustc-dev-guide.rust-lang.org/ |
74b04a01 XL |
10 | //! |
11 | //! # Note | |
12 | //! | |
13 | //! This API is completely unstable and subject to change. | |
14 | ||
1b1a35ee | 15 | #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] |
74b04a01 XL |
16 | #![feature(bool_to_option)] |
17 | #![feature(box_patterns)] | |
3c0e092e | 18 | #![feature(derive_default_enum)] |
f9f354fc | 19 | #![feature(extend_one)] |
3c0e092e | 20 | #![feature(let_else)] |
74b04a01 | 21 | #![feature(never_type)] |
29967ef6 | 22 | #![feature(control_flow_enum)] |
17df50a5 | 23 | #![feature(min_specialization)] |
94222f64 | 24 | #![feature(label_break_value)] |
ba9703b0 | 25 | #![recursion_limit = "512"] // For rustdoc |
74b04a01 XL |
26 | |
27 | #[macro_use] | |
28 | extern crate rustc_macros; | |
6a06907d | 29 | #[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))] |
74b04a01 XL |
30 | #[macro_use] |
31 | extern crate rustc_data_structures; | |
32 | #[macro_use] | |
3dfed10e | 33 | extern crate tracing; |
74b04a01 | 34 | #[macro_use] |
ba9703b0 | 35 | extern crate rustc_middle; |
74b04a01 XL |
36 | |
37 | pub mod infer; | |
38 | pub mod traits; |