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#![feature(assert_matches)]
9#![feature(associated_type_defaults)]
10#![feature(box_patterns)]
11#![feature(if_let_guard)]
12#![feature(iterator_try_collect)]
13#![feature(never_type)]
14// tidy-alphabetical-end
15
16use rustc_middle::query::Providers;
17
18mod abi;
19mod assoc;
20mod common_traits;
21mod consts;
22mod errors;
23mod implied_bounds;
24mod instance;
25mod layout;
26mod needs_drop;
27mod nested_bodies;
28mod opaque_types;
29mod representability;
30pub mod sig_types;
31mod structural_match;
32mod ty;
33
34rustc_fluent_macro::fluent_messages! { "../messages.ftl" }
35
36pub fn provide(providers: &mut Providers) {
37 abi::provide(providers);
38 assoc::provide(providers);
39 common_traits::provide(providers);
40 consts::provide(providers);
41 implied_bounds::provide(providers);
42 layout::provide(providers);
43 needs_drop::provide(providers);
44 opaque_types::provide(providers);
45 representability::provide(providers);
46 ty::provide(providers);
47 instance::provide(providers);
48 structural_match::provide(providers);
49 nested_bodies::provide(providers);
50}