Module rustc_traits::chalk::db

source ·
Expand description

Provides the RustIrDatabase implementation for chalk-solve

The purpose of the chalk_solve::RustIrDatabase is to get data about specific types, such as bounds, where clauses, or fields. This file contains the minimal logic to assemble the types for chalk-solve by calling out to either the TyCtxt (for information about types) or crate::chalk::lowering (to lower rustc types into Chalk types).

Structs

Functions

Creates an InternalSubsts that maps each generic parameter to a higher-ranked var bound at index 0. For types, we use a BoundVar index equal to the type parameter index. For regions, we use the BoundRegionKind::BrNamed variant (which has a DefId).