OccNames for closure conversion isomorphisms
[ghc-hetmet.git] / compiler / basicTypes / OccName.lhs
index 9fb287f..8de65b8 100644 (file)
@@ -32,6 +32,7 @@ module OccName (
        mkDataTOcc, mkDataCOcc, mkDataConWorkerOcc,
        mkSuperDictSelOcc, mkLocalOcc, mkMethodOcc, mkInstTyTcOcc,
        mkInstTyCoOcc, mkEqPredCoOcc,
+        mkCloOcc, mkCloTyConOcc, mkCloDataConOcc, mkCloIsoOcc,
 
        -- ** Deconstruction
        occNameFS, occNameString, occNameSpace, 
@@ -457,6 +458,12 @@ mkGenOcc2           = mk_simple_deriv varName  "$gto"
 mkDataTOcc = mk_simple_deriv varName  "$t"
 mkDataCOcc = mk_simple_deriv varName  "$c"
 
+-- Closure conversion
+mkCloOcc        = mk_simple_deriv varName  "$CC_"
+mkCloTyConOcc   = mk_simple_deriv tcName   ":CC_"
+mkCloDataConOcc = mk_simple_deriv dataName ":CD_"
+mkCloIsoOcc     = mk_simple_deriv varName  "$CCiso_"
+
 mk_simple_deriv sp px occ = mk_deriv sp px (occNameString occ)
 
 -- Data constructor workers are made by setting the name space