DsExpr

ghc-8.2.1.20171030: The GHC API

Safe Haskell | None
Language | Haskell2010

DsExpr

Synopsis

- dsExpr :: HsExpr Id -> DsM CoreExpr
- dsLExpr :: LHsExpr Id -> DsM CoreExpr
- dsLExprNoLP :: LHsExpr Id -> DsM CoreExpr
- dsLocalBinds :: LHsLocalBinds Id -> CoreExpr -> DsM CoreExpr
- dsValBinds :: HsValBinds Id -> CoreExpr -> DsM CoreExpr
- dsLit :: HsLit -> DsM CoreExpr
- dsSyntaxExpr :: SyntaxExpr Id -> [CoreExpr] -> DsM CoreExpr

# Documentation

dsExpr :: HsExpr Id -> DsM CoreExpr Source #

dsLExpr :: LHsExpr Id -> DsM CoreExpr Source #

dsLExprNoLP :: LHsExpr Id -> DsM CoreExpr Source #

Variant of `dsLExpr` that ensures that the result is not levity polymorphic. This should be used when the resulting expression will be an argument to some other function. See Note [Levity polymorphism checking] in DsMonad See Note [Levity polymorphism invariants] in CoreSyn

dsLocalBinds :: LHsLocalBinds Id -> CoreExpr -> DsM CoreExpr Source #

dsValBinds :: HsValBinds Id -> CoreExpr -> DsM CoreExpr Source #

dsLit :: HsLit -> DsM CoreExpr Source #

dsSyntaxExpr :: SyntaxExpr Id -> [CoreExpr] -> DsM CoreExpr Source #