Safe Haskell | Safe-Infered |
---|
- externals :: [External]
- inlineName :: Name -> RewriteH CoreExpr
- inline :: RewriteH CoreExpr
- inlineScrutinee :: RewriteH CoreExpr
- inlineCaseBinder :: RewriteH CoreExpr
- configurableInline :: Bool -> Bool -> RewriteH CoreExpr
- ensureDepth :: Int -> TranslateH Core Bool
- inlineTargets :: TranslateH Core [String]
Documentation
inlineName :: Name -> RewriteH CoreExprSource
:: Bool | Inline the scrutinee instead of the patten match (for case binders). |
-> Bool | Only inline if this variable is a case binder. |
-> RewriteH CoreExpr |
The implementation of inline, an important transformation. This *only* works on a Var of the given name. It can trivially be prompted to more general cases.
ensureDepth :: Int -> TranslateH Core BoolSource
Ensure all the free variables in an expression were bound above a given depth. Assumes minimum depth is 0.
inlineTargets :: TranslateH Core [String]Source
Get list of possible inline targets. Used by shell for completion.