Function chalk_solve::clauses::match_ty
source · fn match_ty<I: Interner>(
builder: &mut ClauseBuilder<'_, I>,
environment: &Environment<I>,
ty: &Ty<I>,
) -> Result<(), Floundered>Expand description
Examine T and push clauses that may be relevant to proving the
following sorts of goals (and maybe others):
DomainGoal::WellFormed(T)DomainGoal::IsUpstream(T)DomainGoal::DownstreamType(T)DomainGoal::IsFullyVisible(T)DomainGoal::IsLocal(T)
Note that the type T must not be an unbound inference variable;
earlier parts of the logic should “flounder” in that case.