ghc-lib-9.4.8.20231111: The GHC API, decoupled from GHC versions
Safe HaskellSafe-Inferred
LanguageHaskell2010

GHC.Core.Opt.Simplify.Monad

Synopsis

Documentation

data SimplM result Source #

Instances

Instances details
MonadIO SimplM Source # 
Instance details

Defined in GHC.Core.Opt.Simplify.Monad

Methods

liftIO :: IO a -> SimplM a #

Applicative SimplM Source # 
Instance details

Defined in GHC.Core.Opt.Simplify.Monad

Methods

pure :: a -> SimplM a #

(<*>) :: SimplM (a -> b) -> SimplM a -> SimplM b #

liftA2 :: (a -> b -> c) -> SimplM a -> SimplM b -> SimplM c #

(*>) :: SimplM a -> SimplM b -> SimplM b #

(<*) :: SimplM a -> SimplM b -> SimplM a #

Functor SimplM Source # 
Instance details

Defined in GHC.Core.Opt.Simplify.Monad

Methods

fmap :: (a -> b) -> SimplM a -> SimplM b #

(<$) :: a -> SimplM b -> SimplM a #

Monad SimplM Source # 
Instance details

Defined in GHC.Core.Opt.Simplify.Monad

Methods

(>>=) :: SimplM a -> (a -> SimplM b) -> SimplM b #

(>>) :: SimplM a -> SimplM b -> SimplM b #

return :: a -> SimplM a #

HasDynFlags SimplM Source # 
Instance details

Defined in GHC.Core.Opt.Simplify.Monad

MonadUnique SimplM Source # 
Instance details

Defined in GHC.Core.Opt.Simplify.Monad

HasLogger SimplM Source # 
Instance details

Defined in GHC.Core.Opt.Simplify.Monad

class Monad m => MonadUnique (m :: Type -> Type) where #

A monad for generating unique identifiers

Minimal complete definition

getUniqueSupplyM

Methods

getUniqueSupplyM :: m UniqSupply #

Get a new UniqueSupply

getUniqueM :: m Unique #

Get a new unique identifier

getUniquesM :: m [Unique] #

Get an infinite list of new unique identifiers

Instances

Instances details
MonadUnique NatM Source # 
Instance details

Defined in GHC.CmmToAsm.Monad

MonadUnique LlvmM Source # 
Instance details

Defined in GHC.CmmToLlvm.Base

MonadUnique SimplM Source # 
Instance details

Defined in GHC.Core.Opt.Simplify.Monad

MonadUnique LiftM Source # 
Instance details

Defined in GHC.Stg.Lift.Monad

MonadUnique CmmParse Source # 
Instance details

Defined in GHC.StgToCmm.ExtCode

MonadUnique FCode Source # 
Instance details

Defined in GHC.StgToCmm.Monad

MonadUnique TcS Source # 
Instance details

Defined in GHC.Tc.Solver.Monad

MonadUnique CoreM 
Instance details

Defined in GHC.Core.Opt.Monad

MonadUnique UniqSM 
Instance details

Defined in GHC.Types.Unique.Supply

MonadUnique (IOEnv (Env gbl lcl)) Source # 
Instance details

Defined in GHC.Tc.Utils.Monad

Methods

getUniqueSupplyM :: IOEnv (Env gbl lcl) UniqSupply #

getUniqueM :: IOEnv (Env gbl lcl) Unique #

getUniquesM :: IOEnv (Env gbl lcl) [Unique] #

newJoinId :: [Var] -> Type -> SimplM Id Source #

Make a join id with given type and arity but without call-by-value annotations.