ghc-9.6.0.20230210: The GHC API
Safe HaskellSafe-Inferred
LanguageHaskell2010

GHC.Core.Opt.Simplify.Utils

Documentation

data SimplCont Source #

Constructors

Stop

Stop[e] = e

Fields

  • OutType

    Type of the hole

  • CallCtxt

    Tells if there is something interesting about the syntactic context, and hence the inliner should be a bit keener (see interestingCallContext) Specifically: This is an argument of a function that has RULES Inlining the call might allow the rule to fire Never ValAppCxt (use ApplyToVal instead) or CaseCtxt (use Select instead)

  • SubDemand

    The evaluation context of e. Tells how e is evaluated. This fuels eta-expansion or eta-reduction without looking at lambda bodies, for example.

    See Note [Eta reduction based on evaluation context] The evaluation context for other SimplConts can be reconstructed with contEvalContext

CastIt OutCoercion SimplCont 
ApplyToVal 
ApplyToTy 
Select 
StrictBind 
StrictArg 
TickIt CoreTickish SimplCont 

Instances

Instances details
Outputable SimplCont Source # 
Instance details

Defined in GHC.Core.Opt.Simplify.Utils

Methods

ppr :: SimplCont -> SDoc Source #

data DupFlag Source #

Constructors

NoDup 
Simplified 
OkToDup 

Instances

Instances details
Outputable DupFlag Source # 
Instance details

Defined in GHC.Core.Opt.Simplify.Utils

Methods

ppr :: DupFlag -> SDoc Source #

data ArgInfo Source #

Constructors

ArgInfo 

Instances

Instances details
Outputable ArgInfo Source # 
Instance details

Defined in GHC.Core.Opt.Simplify.Utils

Methods

ppr :: ArgInfo -> SDoc Source #

data ArgSpec Source #

Instances

Instances details
Outputable ArgSpec Source # 
Instance details

Defined in GHC.Core.Opt.Simplify.Utils

Methods

ppr :: ArgSpec -> SDoc Source #