ghc-6.10.1: The GHC API
Contents
Index
SimplMonad
Synopsis
data
SimplM
result
initSmpl
::
DynFlags
->
RuleBase
-> (
FamInstEnv
,
FamInstEnv
) ->
UniqSupply
->
SimplM
a -> (a,
SimplCount
)
getDOptsSmpl
::
SimplM
DynFlags
getSimplRules
::
SimplM
RuleBase
getFamEnvs
::
SimplM
(
FamInstEnv
,
FamInstEnv
)
class
Monad
m =>
MonadUnique
m
where
getUniqueSupplyM
:: m
UniqSupply
getUniqueM
:: m
Unique
getUniquesM
:: m [
Unique
]
newId
::
FastString
->
Type
->
SimplM
Id
data
SimplCount
data
Tick
=
PreInlineUnconditionally
Id
|
PostInlineUnconditionally
Id
|
UnfoldingDone
Id
|
RuleFired
FastString
|
LetFloatFromLet
|
EtaExpansion
Id
|
EtaReduction
Id
|
BetaReduction
Id
|
CaseOfCase
Id
|
KnownBranch
Id
|
CaseMerge
Id
|
AltMerge
Id
|
CaseElim
Id
|
CaseIdentity
Id
|
FillInCaseDefault
Id
|
BottomFound
|
SimplifierDone
tick
::
Tick
->
SimplM
()
freeTick
::
Tick
->
SimplM
()
getSimplCount
::
SimplM
SimplCount
zeroSimplCount
::
DynFlags
->
SimplCount
pprSimplCount
::
SimplCount
->
SDoc
plusSimplCount
::
SimplCount
->
SimplCount
->
SimplCount
isZeroSimplCount
::
SimplCount
->
Bool
type
SwitchChecker
=
SimplifierSwitch
->
SwitchResult
data
SwitchResult
=
SwBool
Bool
|
SwString
FastString
|
SwInt
Int
getSimplIntSwitch
::
SwitchChecker
-> (
Int
->
SimplifierSwitch
) ->
Int
isAmongSimpl
:: [
SimplifierSwitch
] ->
SimplifierSwitch
->
SwitchResult
intSwitchSet
:: (switch ->
SwitchResult
) -> (
Int
-> switch) ->
Maybe
Int
switchIsOn
:: (switch ->
SwitchResult
) -> switch ->
Bool
Documentation
data
SimplM
result
Instances
Monad
SimplM
MonadUnique
SimplM
initSmpl
::
DynFlags
->
RuleBase
-> (
FamInstEnv
,
FamInstEnv
) ->
UniqSupply
->
SimplM
a -> (a,
SimplCount
)
getDOptsSmpl
::
SimplM
DynFlags
getSimplRules
::
SimplM
RuleBase
getFamEnvs
::
SimplM
(
FamInstEnv
,
FamInstEnv
)
class
Monad
m =>
MonadUnique
m
where
A monad for generating unique identifiers
Methods
getUniqueSupplyM
:: m
UniqSupply
getUniqueM
:: m
Unique
getUniquesM
:: m [
Unique
]
Instances
MonadUnique
UniqSM
MonadUnique
FuelMonad
MonadUnique
SimplM
MonadUnique
(
IOEnv
(
Env
gbl lcl))
MonadUnique
(DFM'
FuelMonad
f)
newId
::
FastString
->
Type
->
SimplM
Id
data
SimplCount
data
Tick
Constructors
PreInlineUnconditionally
Id
PostInlineUnconditionally
Id
UnfoldingDone
Id
RuleFired
FastString
LetFloatFromLet
EtaExpansion
Id
EtaReduction
Id
BetaReduction
Id
CaseOfCase
Id
KnownBranch
Id
CaseMerge
Id
AltMerge
Id
CaseElim
Id
CaseIdentity
Id
FillInCaseDefault
Id
BottomFound
SimplifierDone
Instances
Eq
Tick
Ord
Tick
Outputable
Tick
tick
::
Tick
->
SimplM
()
freeTick
::
Tick
->
SimplM
()
getSimplCount
::
SimplM
SimplCount
zeroSimplCount
::
DynFlags
->
SimplCount
pprSimplCount
::
SimplCount
->
SDoc
plusSimplCount
::
SimplCount
->
SimplCount
->
SimplCount
isZeroSimplCount
::
SimplCount
->
Bool
type
SwitchChecker
=
SimplifierSwitch
->
SwitchResult
data
SwitchResult
Constructors
SwBool
Bool
SwString
FastString
SwInt
Int
getSimplIntSwitch
::
SwitchChecker
-> (
Int
->
SimplifierSwitch
) ->
Int
isAmongSimpl
:: [
SimplifierSwitch
] ->
SimplifierSwitch
->
SwitchResult
intSwitchSet
:: (switch ->
SwitchResult
) -> (
Int
-> switch) ->
Maybe
Int
switchIsOn
:: (switch ->
SwitchResult
) -> switch ->
Bool
Produced by
Haddock
version 2.3.0