rust/compiler/rustc_ty_utils/src/lib.rs

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

63 lines
1.6 KiB
Rust
Raw Normal View History

2020-01-13 12:40:30 +00:00
//! Various checks
//!
//! # Note
//!
//! This API is completely unstable and subject to change.
2020-09-23 19:51:56 +00:00
#![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")]
#![cfg_attr(not(bootstrap), doc(rust_logo))]
#![cfg_attr(not(bootstrap), feature(rustdoc_internals))]
#![cfg_attr(not(bootstrap), allow(internal_features))]
#![feature(assert_matches)]
#![feature(associated_type_defaults)]
#![feature(iterator_try_collect)]
2022-09-30 17:53:32 +00:00
#![feature(let_chains)]
#![feature(if_let_guard)]
#![feature(never_type)]
#![feature(box_patterns)]
2020-01-13 12:40:30 +00:00
#![recursion_limit = "256"]
#![deny(rustc::untranslatable_diagnostic)]
#![deny(rustc::diagnostic_outside_of_impl)]
2020-01-13 12:40:30 +00:00
#[macro_use]
2020-03-29 14:41:09 +00:00
extern crate rustc_middle;
2020-01-13 12:40:30 +00:00
#[macro_use]
2020-08-14 06:05:01 +00:00
extern crate tracing;
2020-01-13 12:40:30 +00:00
use rustc_errors::{DiagnosticMessage, SubdiagnosticMessage};
use rustc_fluent_macro::fluent_messages;
use rustc_middle::query::Providers;
2020-01-13 12:40:30 +00:00
mod abi;
mod assoc;
mod common_traits;
2022-06-28 20:45:05 +00:00
mod consts;
mod errors;
mod implied_bounds;
2020-02-12 16:24:32 +00:00
pub mod instance;
mod layout;
mod layout_sanity_check;
mod needs_drop;
2023-04-18 14:09:48 +00:00
mod opaque_types;
pub mod representability;
pub mod sig_types;
mod structural_match;
2020-01-13 12:40:30 +00:00
mod ty;
fluent_messages! { "../messages.ftl" }
pub fn provide(providers: &mut Providers) {
abi::provide(providers);
assoc::provide(providers);
common_traits::provide(providers);
consts::provide(providers);
implied_bounds::provide(providers);
layout::provide(providers);
needs_drop::provide(providers);
2023-04-18 14:09:48 +00:00
opaque_types::provide(providers);
2022-08-15 19:11:11 +00:00
representability::provide(providers);
2020-01-13 12:40:30 +00:00
ty::provide(providers);
2020-04-05 05:21:36 +00:00
instance::provide(providers);
structural_match::provide(providers);
2020-01-13 12:40:30 +00:00
}