Moduleghc-9.10.3GHC2021
GHC.Tc.Utils.Instantiate
- 38 values
- Packageghc-9.10.3
- Exports38
- LanguageGHC2021
- LicenceBSD-3-Clause
- SourceTcMType.hs
instantiateSigma :: CtOrigin-> ConcreteTyVarsconcreteness information
-> [TyVar]-> TcThetaType-> TcSigmaType-> TcM ([TcTyVar], HsWrapper, TcSigmaType)
Given a list of [TyVar], skolemize the type variables,
returning a substitution mapping the original tyvars to the
skolems, and the list of newly bound skolems.
Give fresh uniques to a bunch of TyVars, but they stay
as TyVars, rather than becoming TcTyVars
Used in GHC.Tc.Instance.Family.newFamInst, and newClsInst
Give fresh uniques to a bunch of CoVars Used in "GHC.Tc.Instance.Family.newFamInst"
Given ty::forall k1 k2. k, instantiate all the invisible forall-binders
returning ty kk1 kk2 :: k[kk1k1, kk2k1]
Called only to instantiate kinds, in user-written type signatures
newMethodFromName Used when Name is the wired-in name for a wired-in class method, so the caller knows its type for sure, which should be of form
forall a. C a => <blah>newMethodFromName is supposed to instantiate just the outer type variable and constraint
Returns free variables of WantedConstraints as a non-deterministic set. See Note [Deterministic FV] in GHC.Utils.FV.
Returns free variables of constraints as a non-deterministic set
Returns free variables of a bag of constraints as a non-deterministic set. See Note [Deterministic FV] in GHC.Utils.FV.