Note [Scoped tyvars in a TcTyCon]
The tcTyConScopedTyVars field records the lexicial-binding connection
between the original, user-specified Name (i.e. thing in scope) and
the TcTyVar that the Name is bound to.
Order *does* matter; the tcTyConScopedTyVars list consists of
specified_tvs ++ required_tvs
where
* specified ones first
* required_tvs the same as tyConTyVars
* tyConArity = length required_tvs
tcTyConScopedTyVars are used only for MonoTcTyCons, not PolyTcTyCons.
See Note [TcTyCon, MonoTcTyCon, and PolyTcTyCon] in GHC.Tc.TyCl References 1
- TcTyCon, MonoTcTyCon, and PolyTcTyCon GHC.Tc.TyCl
Referenced by 4
- GHC.Tc.Deriv call site ×2
- GHC.Core.TyCon call site
- GHC.Tc.TyCl call site