| Safe Haskell | Ignore |
|---|---|
| Language | GHC2021 |
GHC.Stg.Lift.Types
Synopsis
- data Skeleton
- bothSk :: Skeleton -> Skeleton -> Skeleton
- altSk :: Skeleton -> Skeleton -> Skeleton
- rhsSk :: Card -> Skeleton -> Skeleton
- data BinderInfo
- = BindsClosure !Id !Bool
- | BoringBinder !Id
- binderInfoBndr :: BinderInfo -> Id
- binderInfoOccursAsArg :: BinderInfo -> Maybe Bool
Documentation
Captures details of the syntax tree relevant to the cost model, such as closures, multi-shot lambdas and case expressions.
Instances
| Outputable Skeleton # | |
Defined in GHC.Stg.Lift.Types | |
data BinderInfo #
The type used in binder positions in GenStgExprs.
Constructors
| BindsClosure !Id !Bool | Let(-no-escape)-bound thing with a flag indicating whether it occurs as an argument or in a nullary application (see GHC.Stg.Lift.Analysis). |
| BoringBinder !Id | Every other kind of binder |
Instances
| Outputable BinderInfo # | |
Defined in GHC.Stg.Lift.Types Methods ppr :: BinderInfo -> SDoc # | |
| OutputableBndr BinderInfo # | |
Defined in GHC.Stg.Lift.Types Methods pprBndr :: BindingSite -> BinderInfo -> SDoc # pprPrefixOcc :: BinderInfo -> SDoc # pprInfixOcc :: BinderInfo -> SDoc # | |
binderInfoBndr :: BinderInfo -> Id #
Gets the bound Id out a BinderInfo.
binderInfoOccursAsArg :: BinderInfo -> Maybe Bool #
Returns Nothing for BoringBinders and Just the flag indicating
occurrences as argument or in a nullary applications otherwise.