[project @ 1999-02-05 16:02:18 by simonm]
[ghc-hetmet.git] / ghc / compiler / prelude / TysPrim.lhs
index 406dfb7..6bb4f67 100644 (file)
@@ -8,7 +8,7 @@ types and operations.''
 
 \begin{code}
 module TysPrim(
-       alphaTyVars, alphaTyVar, betaTyVar, gammaTyVar, deltaTyVar,
+       alphaTyVars, betaTyVars, alphaTyVar, betaTyVar, gammaTyVar, deltaTyVar,
        alphaTy, betaTy, gammaTy, deltaTy,
        openAlphaTyVar, openAlphaTyVars,
 
@@ -30,6 +30,7 @@ module TysPrim(
 
        mVarPrimTyCon,                  mkMVarPrimTy,   
        stablePtrPrimTyCon,             mkStablePtrPrimTy,
+       stableNamePrimTyCon,            mkStableNamePrimTy,
        weakPrimTyCon,                  mkWeakPrimTy,
        foreignObjPrimTyCon,            foreignObjPrimTy,
        threadIdPrimTyCon,              threadIdPrimTy,
@@ -62,6 +63,8 @@ alphaTyVars :: [TyVar]
 alphaTyVars = [ mkSysTyVar u boxedTypeKind
              | u <- map mkAlphaTyVarUnique [2..] ]
 
+betaTyVars = tail alphaTyVars
+
 alphaTyVar, betaTyVar, gammaTyVar :: TyVar
 (alphaTyVar:betaTyVar:gammaTyVar:deltaTyVar:_) = alphaTyVars
 
@@ -217,6 +220,18 @@ mkStablePtrPrimTy ty = mkTyConApp stablePtrPrimTyCon [ty]
 
 %************************************************************************
 %*                                                                     *
+\subsection[TysPrim-stable-names]{The stable-name type}
+%*                                                                     *
+%************************************************************************
+
+\begin{code}
+stableNamePrimTyCon = pcPrimTyCon stableNamePrimTyConKey SLIT("StableName#") 1 StableNameRep
+
+mkStableNamePrimTy ty = mkTyConApp stableNamePrimTyCon [ty]
+\end{code}
+
+%************************************************************************
+%*                                                                     *
 \subsection[TysPrim-foreign-objs]{The ``foreign object'' type}
 %*                                                                     *
 %************************************************************************