Module chalk_solve::clauses::generalize
source · Expand description
This gets rid of free variables in a type by replacing them by fresh bound
ones. We use this when building clauses that contain types passed to
program_clauses
; these may contain variables, and just copying those
variables verbatim leads to problems. Instead, we return a slightly more
general program clause, with new variables in those places. This can only
happen with dyn Trait
currently; that’s the only case where we use the
types passed to program_clauses
in the clauses we generate.