Safe Haskell | None |
---|---|
Language | Haskell2010 |
Documentation
mkProdDmd :: [JointDmd] -> CleanDemand Source
mkOnceUsedDmd :: CleanDemand -> JointDmd Source
mkManyUsedDmd :: CleanDemand -> JointDmd Source
getUsage :: CleanDemand -> UseDmd Source
toCleanDmd :: Demand -> Type -> (CleanDemand, DeferAndUseM) Source
cleanUseDmd_maybe :: JointDmd -> Maybe UseDmd Source
strictenDmd :: JointDmd -> CleanDemand Source
bothCleanDmd :: CleanDemand -> CleanDemand -> CleanDemand Source
addCaseBndrDmd :: Demand -> [Demand] -> [Demand] Source
dmdTypeDepth :: DmdType -> Arity Source
lubDmdType :: DmdType -> DmdType -> DmdType Source
bothDmdType :: DmdType -> BothDmdArg -> DmdType Source
removeDmdTyArgs :: DmdType -> DmdType Source
type BothDmdArg = (DmdEnv, Termination ()) Source
mkBothDmdArg :: DmdEnv -> BothDmdArg Source
toBothDmdArg :: DmdType -> BothDmdArg Source
findIdDemand :: DmdType -> Var -> Demand Source
cprProdRes :: [DmdType] -> DmdResult Source
appIsBottom :: StrictSig -> Int -> Bool Source
isBottomingSig :: StrictSig -> Bool Source
pprIfaceStrictSig :: StrictSig -> SDoc Source
mkStrictSig :: DmdType -> StrictSig Source
mkClosedStrictSig :: [Demand] -> DmdResult -> StrictSig Source
cprProdSig :: Arity -> StrictSig Source
splitStrictSig :: StrictSig -> ([Demand], DmdResult) Source
increaseStrictSigArity :: Int -> StrictSig -> StrictSig Source
seqDemandList :: [JointDmd] -> () Source
seqDmdType :: DmdType -> () Source
seqStrictSig :: StrictSig -> () Source
isStrictDmd :: Demand -> Bool Source
splitDmdTy :: DmdType -> (Demand, DmdType) Source
deferAfterIO :: DmdType -> DmdType Source
postProcessUnsat :: DeferAndUse -> DmdType -> DmdType Source
postProcessDmdTypeM :: DeferAndUseM -> DmdType -> BothDmdArg Source
splitProdDmd_maybe :: JointDmd -> Maybe [JointDmd] Source
peelCallDmd :: CleanDemand -> (CleanDemand, DeferAndUse) Source
dmdTransformSig :: StrictSig -> CleanDemand -> DmdType Source
dmdTransformDataConSig :: Arity -> StrictSig -> CleanDemand -> DmdType Source
argOneShots :: OneShotInfo -> JointDmd -> [OneShotInfo] Source
argsOneShots :: StrictSig -> Arity -> [[OneShotInfo]] Source
trimToType :: JointDmd -> TypeShape -> JointDmd Source
isSingleUsed :: JointDmd -> Bool Source
killUsageDemand :: DynFlags -> Demand -> Demand Source
killUsageSig :: DynFlags -> StrictSig -> StrictSig Source
zapUsageDemand :: Demand -> Demand Source
strictifyDictDmd :: Type -> Demand -> Demand Source