]>
Commit | Line | Data |
---|---|---|
923072b8 | 1 | //! This crate defines the trait resolution method. |
ba9703b0 XL |
2 | //! |
3 | //! - **Traits.** Trait resolution is implemented in the `traits` module. | |
4 | //! | |
5 | //! For more information about how rustc works, see the [rustc-dev-guide]. | |
6 | //! | |
7 | //! [rustc-dev-guide]: https://rustc-dev-guide.rust-lang.org/ | |
8 | //! | |
9 | //! # Note | |
10 | //! | |
11 | //! This API is completely unstable and subject to change. | |
12 | ||
1b1a35ee | 13 | #![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")] |
487cf647 | 14 | #![feature(associated_type_bounds)] |
1b1a35ee | 15 | #![feature(box_patterns)] |
5e7ed085 | 16 | #![feature(control_flow_enum)] |
5e7ed085 | 17 | #![feature(drain_filter)] |
17df50a5 | 18 | #![feature(hash_drain_filter)] |
5e7ed085 | 19 | #![feature(let_chains)] |
923072b8 | 20 | #![feature(if_let_guard)] |
1b1a35ee | 21 | #![feature(never_type)] |
9c376795 | 22 | #![feature(result_option_inspect)] |
f2b60f7d | 23 | #![feature(type_alias_impl_trait)] |
9c376795 | 24 | #![feature(min_specialization)] |
ba9703b0 XL |
25 | #![recursion_limit = "512"] // For rustdoc |
26 | ||
27 | #[macro_use] | |
28 | extern crate rustc_macros; | |
6a06907d | 29 | #[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))] |
ba9703b0 XL |
30 | #[macro_use] |
31 | extern crate rustc_data_structures; | |
32 | #[macro_use] | |
3dfed10e | 33 | extern crate tracing; |
ba9703b0 XL |
34 | #[macro_use] |
35 | extern crate rustc_middle; | |
94222f64 XL |
36 | #[macro_use] |
37 | extern crate smallvec; | |
ba9703b0 | 38 | |
9ffffee4 | 39 | use rustc_errors::{DiagnosticMessage, SubdiagnosticMessage}; |
49aad941 | 40 | use rustc_fluent_macro::fluent_messages; |
9ffffee4 | 41 | |
f2b60f7d | 42 | pub mod errors; |
ba9703b0 | 43 | pub mod infer; |
9c376795 | 44 | pub mod solve; |
ba9703b0 | 45 | pub mod traits; |
9ffffee4 | 46 | |
353b0b11 | 47 | fluent_messages! { "../messages.ftl" } |