ghc-7.8.4: The GHC API

Safe HaskellNone
LanguageHaskell98

FamInstEnv

Contents

Synopsis

Documentation

type FamInstEnv = UniqFM FamilyInstEnv Source

orphNamesOfFamInst :: FamInst -> NameSet Source

Collects the names of the concrete types and type constructors that make up the LHS of a type family instance, including the family name itself.

For instance, given `type family Foo a b`: `type instance Foo (F (G (H a))) b = ...` would yield [Foo,F,G,H]

Used in the implementation of ":info" in GHCi.

CoAxioms

instNewTyConTF_maybe :: FamInstEnvs -> TyCon -> [Type] -> Maybe (Type, Coercion) Source

Unwrap a newtype of a newtype intances. This is analogous to Coercion.instNewTyCon_maybe; differences are: * it also lookups up newtypes families, and * it does not require the newtype to be saturated. (a requirement using it for Coercible)