rustc_ty_utils/
lib.rs

1//! Various checks
2//!
3//! # Note
4//!
5//! This API is completely unstable and subject to change.
6
7// tidy-alphabetical-start
8#![allow(internal_features)]
9#![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")]
10#![doc(rust_logo)]
11#![feature(assert_matches)]
12#![feature(associated_type_defaults)]
13#![feature(box_patterns)]
14#![feature(if_let_guard)]
15#![feature(iterator_try_collect)]
16#![feature(never_type)]
17#![feature(rustdoc_internals)]
18// tidy-alphabetical-end
19
20use rustc_middle::query::Providers;
21
22mod abi;
23mod assoc;
24mod common_traits;
25mod consts;
26mod errors;
27mod implied_bounds;
28mod instance;
29mod layout;
30mod needs_drop;
31mod nested_bodies;
32mod opaque_types;
33mod representability;
34pub mod sig_types;
35mod structural_match;
36mod ty;
37
38rustc_fluent_macro::fluent_messages! { "../messages.ftl" }
39
40pub fn provide(providers: &mut Providers) {
41    abi::provide(providers);
42    assoc::provide(providers);
43    common_traits::provide(providers);
44    consts::provide(providers);
45    implied_bounds::provide(providers);
46    layout::provide(providers);
47    needs_drop::provide(providers);
48    opaque_types::provide(providers);
49    representability::provide(providers);
50    ty::provide(providers);
51    instance::provide(providers);
52    structural_match::provide(providers);
53    nested_bodies::provide(providers);
54}