X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fcompiler%2Ftypes%2FTyLoop.lhi;h=31e348c7b75665fb629768c752ae2b0fb57ca44b;hb=5eb1c77c795f92ed0f4c8023847e9d4be1a4fd0d;hp=36506e621ae410f4128a8afd4163f8e023e06cf8;hpb=f9120c200bcf613b58d742802172fb4c08171f0d;p=ghc-hetmet.git diff --git a/ghc/compiler/types/TyLoop.lhi b/ghc/compiler/types/TyLoop.lhi index 36506e6..31e348c 100644 --- a/ghc/compiler/types/TyLoop.lhi +++ b/ghc/compiler/types/TyLoop.lhi @@ -9,14 +9,15 @@ import Unique ( Unique ) import FieldLabel ( FieldLabel ) import Id ( Id, GenId, StrictnessMark, mkTupleCon, mkDataCon, - dataConSig, getInstantiatedDataConSig ) + isNullaryDataCon, dataConArgTys, idType ) import PprType ( specMaybeTysSuffix ) import Name ( Name ) import TyCon ( TyCon ) import TyVar ( GenTyVar, TyVar ) -import Type ( GenType, Type ) +import Type ( splitSigmaTy, splitFunTy, GenType, Type ) import Usage ( GenUsage ) import Class ( Class, GenClass ) +import TysPrim ( voidTy ) data GenId ty data GenType tyvar uvar @@ -31,12 +32,16 @@ type Id = GenId (GenType (GenTyVar (GenUsage Unique)) Unique) -- Needed in TyCon mkTupleCon :: Int -> Id -dataConSig :: Id -> ([TyVar], [(Class, Type)], [Type], TyCon) +isNullaryDataCon :: Id -> Bool specMaybeTysSuffix :: [Maybe Type] -> _PackedString +idType :: Id -> Type +splitSigmaTy :: GenType t u -> ([t], [(Class,GenType t u)], GenType t u) +splitFunTy :: GenType t u -> ([GenType t u], GenType t u) instance Eq (GenClass a b) -- Needed in Type -getInstantiatedDataConSig :: Id -> [Type] -> ([Type],[Type],Type) +dataConArgTys :: Id -> [Type] -> [Type] +voidTy :: Type -- Needed in TysWiredIn data StrictnessMark = MarkedStrict | NotMarkedStrict