HORIZON HASKELLDocslts/ghc-9.14.xb2f3bfd2026-10-11Search names, modules, packages, or :: a typeCtrl K

GHC 9.14.1 · lts/ghc-9.14.x · b2f3bfd · 2026-10-11

Moduleghc-lib-parser-9.14.1.20251220GHC2021

GHC.Core.Class

  • 7 types
  • 25 values
datadata Class
#
Instances5Eq, Data, Uniquable, Outputable, NamedThing
  • Eq ClassDefined in ghc-lib-parser-9.14.1.20251220 · GHC.Core.Class
  • Data ClassDefined in ghc-lib-parser-9.14.1.20251220 · GHC.Core.Class
  • Uniquable ClassDefined in ghc-lib-parser-9.14.1.20251220 · GHC.Core.Class
  • Outputable ClassDefined in ghc-lib-parser-9.14.1.20251220 · GHC.Core.Class
  • NamedThing ClassDefined in ghc-lib-parser-9.14.1.20251220 · GHC.Core.Class
datadata TyFamEqnValidityInfo
#

Information about a type family equation, used for validity checking of closed type family equations and associated type family default equations.

This type exists to delay validity-checking after typechecking type declaration groups, to avoid cyclic evaluation inside the typechecking knot.

See Note [Type-checking default assoc decls] in GHC.Tc.TyCl.

Constructors

  • NoVI

    Used for equations which don't need any validity checking, for example equations imported from another module.

  • VI

    Information necessary for validity checking of a type family equation.

    • vi_loc :: SrcSpan
    • vi_qtvs :: [TcTyVar]

      LHS quantified type variables

    • vi_non_user_tvs :: TyVarSet

      non-user-written type variables (for error message reporting)

      Example: with -XPolyKinds, typechecking type instance forall a. F = () introduces the kind variable k for the kind of a. See #23734.

    • vi_pats :: [Type]

      LHS patterns

    • vi_rhs :: Type

      RHS of the equation

      NB: for associated type family default declarations, this is the RHS *before* applying the substitution from Note [Type-checking default assoc decls] in GHC.Tc.TyCl.

typetype FunDep a = ([a], [a])
#