HORIZON HASKELLDocslts/ghc-9.10.xc74966e2026-09-27Search names, modules, packages, or :: a typeCtrl K

GHC 9.10.3 · lts/ghc-9.10.x · c74966e · 2026-09-27

Moduleghc-9.10.3GHC2021

GHC.Hs.Expr

Abstract Haskell syntax for expressions.

  • 32 types
  • 104 values
  • Packageghc-9.10.3
  • Exports140
  • LanguageGHC2021
  • LicenceBSD-3-Clause
  • SourceExpr.hs
typetype PostTcExpr = HsExpr GhcTc
#

Post-Type checking Expression

PostTcExpr is an evidence expression attached to the syntax tree by the type checker (c.f. postTcType).

typetype PostTcTable = [(Name, PostTcExpr)]
#

Post-Type checking Table

We use a PostTcTable where there are a bunch of pieces of evidence, more than is convenient to keep individually.

datadata SyntaxExprTc
#

An expression with wrappers, used for rebindable syntax

This should desugar to

syn_res_wrap $ syn_expr (syn_arg_wraps[0] arg0)
                        (syn_arg_wraps[1] arg1) ...

where the actual arguments come from elsewhere in the AST.

Instances3Data, Outputable, ToHie
valuenoExpr :: HsExpr (GhcPass p)
#

This is used for rebindable-syntax pieces that are too polymorphic for tcSyntaxOp (trS_fmap and the mzip in ParStmt)

data familydata family HsRecUpdParent x
#

Information about the parent of a record update:

  • the parent type constructor or pattern synonym,

  • the relevant con-likes,

  • the field labels.

Instances6Data, HsRecUpdParent

Orphan instances

19 instances