-builtinPAs :: Builtins -> [(Name, Module, FastString)]
-builtinPAs bi@(Builtins { dphModules = mods })
- = [
- mk (tyConName $ closureTyCon bi) (dph_Closure mods) (fsLit "$fPA:->")
- , mk (tyConName $ voidTyCon bi) (dph_Repr mods) (fsLit "$fPAVoid")
- , mk (tyConName $ parrayTyCon bi) (dph_Instances mods) (fsLit "$fPAPArray")
- , mk unitTyConName (dph_Instances mods) (fsLit "$fPA()")
-
- , mk intTyConName (dph_Instances mods) (fsLit "$fPAInt")
- , mk word8TyConName (dph_Instances mods) (fsLit "$fPAWord8")
- , mk doubleTyConName (dph_Instances mods) (fsLit "$fPADouble")
- , mk boolTyConName (dph_Instances mods) (fsLit "$fPABool")
- ]
- ++ tups
- where
- mk name mod fs = (name, mod, fs)
-
- tups = map mk_tup [2..mAX_DPH_PROD]
- mk_tup n = mk (tyConName $ tupleTyCon Boxed n)
- (dph_Instances mods)
- (mkFastString $ "$fPA(" ++ replicate (n-1) ',' ++ ")")
-
-initBuiltinPRs :: Builtins -> DsM [(Name, Var)]
-initBuiltinPRs = initBuiltinDicts . builtinPRs
-
-builtinPRs :: Builtins -> [(Name, Module, FastString)]
-builtinPRs bi@(Builtins { dphModules = mods }) =
- [
- mk (tyConName unitTyCon) (dph_Repr mods) (fsLit "$fPR()")
- , mk (tyConName $ voidTyCon bi) (dph_Repr mods) (fsLit "$fPRVoid")
- , mk (tyConName $ wrapTyCon bi) (dph_Repr mods) (fsLit "$fPRWrap")
- , mk (tyConName $ closureTyCon bi) (dph_Closure mods) (fsLit "$fPR:->")
-
- -- temporary
- , mk intTyConName (dph_Instances mods) (fsLit "$fPRInt")
- , mk word8TyConName (dph_Instances mods) (fsLit "$fPRWord8")
- , mk doubleTyConName (dph_Instances mods) (fsLit "$fPRDouble")
- ]
-
- ++ map mk_sum [2..mAX_DPH_SUM]
- ++ map mk_prod [2..mAX_DPH_PROD]