1 //! New recursive solver modeled on Chalk's recursive solver. Most of
2 //! the guts are broken up into modules; see the comments in those modules.
4 #![deny(rust_2018_idioms)]
5 #![deny(unused_lifetimes)]
7 #![feature(crate_visibility_modifier)]
8 #![feature(in_band_lifetimes)]
11 #![recursion_limit="256"]
20 mod evaluate_obligation;
21 mod implied_outlives_bounds;
22 mod normalize_projection_ty;
23 mod normalize_erasing_regions;
28 use rustc::ty::query::Providers;
30 pub fn provide(p: &mut Providers<'_>) {
31 dropck_outlives::provide(p);
32 evaluate_obligation::provide(p);
33 implied_outlives_bounds::provide(p);
35 chalk_context::provide(p);
36 normalize_projection_ty::provide(p);
37 normalize_erasing_regions::provide(p);