TyThing(..), DFunId, TypeEnv,
GenAvailInfo,
WhatsImported(..), GenAvailInfo(..),
- ImportVersion, AvailInfo, Deprecations(..),
+ ImportVersion, Deprecations(..),
lookupVersion, typeEnvIds
)
import Id ( idType, idInfo, isImplicitId, idCgInfo,
isLocalId, idName,
)
-import DataCon ( dataConId, dataConSig, dataConFieldLabels, dataConStrictMarks )
+import DataCon ( dataConWorkId, dataConSig, dataConFieldLabels, dataConStrictMarks )
import IdInfo -- Lots
import Var ( Var )
import CoreSyn ( CoreRule(..), IdCoreRule )
import CoreFVs ( ruleLhsFreeNames )
import CoreUnfold ( neverUnfold, unfoldingTemplate )
-import PprCore ( pprIdCoreRule )
-import Name ( getName, nameModule, toRdrName, isExternalName,
+import PprCore ( pprIdRules )
+import Name ( getName, toRdrName, isExternalName,
nameIsLocalOrFrom, Name, NamedThing(..) )
import NameEnv
import NameSet
import Monad ( when )
import Maybe ( catMaybes )
-import IO ( IOMode(..), openFile, hClose, putStrLn )
+import IO ( putStrLn )
\end{code}
tycon = classTyCon clas
data_con = head (tyConDataCons tycon)
sys_names = mkClassDeclSysNames (getName tycon, getName data_con,
- getName (dataConId data_con), map getName sc_sels)
+ getName (dataConWorkId data_con), map getName sc_sels)
toClassOpSig (sel_id, def_meth)
= ASSERT(sel_tyvars == clas_tyvars)
ifaceConDecls (DataCons cs) = DataCons (map ifaceConDecl cs)
ifaceConDecl data_con
- = ConDecl (getName data_con) (getName (dataConId data_con))
+ = ConDecl (getName data_con) (getName (dataConWorkId data_con))
(toHsTyVars ex_tyvars)
(toHsContext ex_theta)
details noSrcLoc
dump_rules :: [IdCoreRule] -> SDoc
dump_rules [] = empty
dump_rules rs = vcat [ptext SLIT("{-# RULES"),
- nest 4 (vcat (map pprIdCoreRule rs)),
+ nest 4 (pprIdRules rs),
ptext SLIT("#-}")]
\end{code}
%************************************************************************
\begin{code}
-writeIface :: FilePath -> ModIface -> IO ()
-writeIface hi_path mod_iface
- = do { if_hdl <- openFile hi_path WriteMode
- ; printForIface if_hdl from_this_mod (pprIface mod_iface)
- ; hClose if_hdl
- }
- where
- -- Print names unqualified if they are from this module
- from_this_mod n = nameModule n == this_mod
- this_mod = mi_module mod_iface
-
pprIface :: ModIface -> SDoc
pprIface iface
= vcat [ ptext SLIT("__interface")