]> git.proxmox.com Git - rustc.git/blame - compiler/rustc_infer/src/lib.rs
New upstream version 1.67.1+dfsg1
[rustc.git] / compiler / rustc_infer / src / lib.rs
CommitLineData
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
2b03887a 5//! type check pass in the compiler is found in the `rustc_hir_analysis` 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 16#![feature(box_patterns)]
5e7ed085 17#![feature(control_flow_enum)]
f9f354fc 18#![feature(extend_one)]
5e7ed085 19#![feature(let_chains)]
2b03887a 20#![feature(if_let_guard)]
17df50a5 21#![feature(min_specialization)]
5e7ed085 22#![feature(never_type)]
923072b8 23#![feature(try_blocks)]
ba9703b0 24#![recursion_limit = "512"] // For rustdoc
74b04a01
XL
25
26#[macro_use]
27extern crate rustc_macros;
6a06907d 28#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))]
74b04a01
XL
29#[macro_use]
30extern crate rustc_data_structures;
31#[macro_use]
3dfed10e 32extern crate tracing;
74b04a01 33#[macro_use]
ba9703b0 34extern crate rustc_middle;
74b04a01 35
f2b60f7d 36mod errors;
74b04a01
XL
37pub mod infer;
38pub mod traits;