-- ** Identifiers
Id, idType,
isImplicitId, isDeadBinder,
- isSpecPragmaId, isExportedId, isLocalId, isGlobalId,
+ isExportedId, isLocalId, isGlobalId,
isRecordSelector,
isPrimOpId, isFCallId, isClassOpId_maybe,
isDataConWorkId, idDataCon,
-- ** Type constructors
TyCon,
- tyConTyVars, tyConDataCons,
- isClassTyCon, isSynTyCon, isNewTyCon,
+ tyConTyVars, tyConDataCons, tyConArity,
+ isClassTyCon, isSynTyCon, isNewTyCon, isPrimTyCon,
getSynTyConDefn,
+ -- ** Type variables
+ TyVar,
+ alphaTyVars,
+
-- ** Data constructors
DataCon,
dataConSig, dataConType, dataConTyCon, dataConFieldLabels,
import GHC.Exts ( unsafeCoerce# )
#endif
-import Packages ( PackageIdH(..), initPackages )
+import Packages ( initPackages )
import NameSet ( NameSet, nameSetToList, elemNameSet )
import RdrName ( GlobalRdrEnv, GlobalRdrElt(..), RdrName,
globalRdrEnvElts )
pprThetaArrow, pprParendType, splitForAllTys,
funResultTy )
import Id ( Id, idType, isImplicitId, isDeadBinder,
- isSpecPragmaId, isExportedId, isLocalId, isGlobalId,
+ isExportedId, isLocalId, isGlobalId,
isRecordSelector, recordSelectorFieldLabel,
isPrimOpId, isFCallId, isClassOpId_maybe,
isDataConWorkId, idDataCon,
isBottomingId )
+import Var ( TyVar )
+import TysPrim ( alphaTyVars )
import TyCon ( TyCon, isClassTyCon, isSynTyCon, isNewTyCon,
+ isPrimTyCon, tyConArity,
tyConTyVars, tyConDataCons, getSynTyConDefn )
import Class ( Class, classSCTheta, classTvsFds, classMethods )
import FunDeps ( pprFundeps )
import Directory ( getModificationTime, doesFileExist )
import Maybe ( isJust, isNothing, fromJust )
import Maybes ( orElse, expectJust, mapCatMaybes )
-import qualified Maybes (MaybeErr(..))
import List ( partition, nub )
import qualified List
import Monad ( unless, when )