ghc-lib-0.20190204: The GHC API, decoupled from GHC versions

Safe HaskellNone
LanguageHaskell2010

SimplMonad

Documentation

data SimplM result Source #

Instances
Instance details

Defined in SimplMonad

Methods

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

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

return :: a -> SimplM a #

fail :: String -> SimplM a #

Instance details

Defined in SimplMonad

Methods

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

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

Instance details

Defined in SimplMonad

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 #

Instance details

Defined in SimplMonad

Methods

liftIO :: IO a -> SimplM a #

Instance details

Defined in SimplMonad

initSmpl :: DynFlags -> RuleEnv -> (FamInstEnv, FamInstEnv) -> UniqSupply -> Int -> SimplM a -> IO (a, SimplCount) Source #

traceSmpl :: String -> SDoc -> SimplM () Source #

getSimplRules :: SimplM RuleEnv Source #

getFamEnvs :: SimplM (FamInstEnv, FamInstEnv) Source #

class Monad m => MonadUnique m where Source #

A monad for generating unique identifiers

Minimal complete definition

getUniqueSupplyM

Methods

getUniqueSupplyM :: m UniqSupply Source #

Get a new UniqueSupply

getUniqueM :: m Unique Source #

Get a new unique identifier

getUniquesM :: m [Unique] Source #

Get an infinite list of new unique identifiers

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

Defined in TcRnMonad

newId :: FastString -> Type -> SimplM Id Source #

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

data SimplCount Source #

tick :: Tick -> SimplM () Source #

freeTick :: Tick -> SimplM () Source #

checkedTick :: Tick -> SimplM () Source #

getSimplCount :: SimplM SimplCount Source #

zeroSimplCount :: DynFlags -> SimplCount Source #

pprSimplCount :: SimplCount -> SDoc Source #

plusSimplCount :: SimplCount -> SimplCount -> SimplCount Source #

isZeroSimplCount :: SimplCount -> Bool Source #

AltStyle によって変換されたページ (->オリジナル) /