ghc-lib-0.20201201: The GHC API, decoupled from GHC versions
Safe HaskellNone
LanguageHaskell2010

GHC.Rename.Module

Synopsis
  • rnSrcDecls :: HsGroup GhcPs -> RnM (TcGblEnv, HsGroup GhcRn)
  • addTcgDUs :: TcGblEnv -> DefUses -> TcGblEnv
  • findSplice :: [LHsDecl GhcPs] -> RnM (HsGroup GhcPs, Maybe (SpliceDecl GhcPs, [LHsDecl GhcPs]))

Documentation

rnSrcDecls :: HsGroup GhcPs -> RnM (TcGblEnv, HsGroup GhcRn) Source #

rnSourceDecl "renames" declarations. It simultaneously performs dependency analysis and precedence parsing. It also does the following error checks:

  • Checks that tyvars are used properly. This includes checking for undefined tyvars, and tyvars in contexts that are ambiguous. (Some of this checking has now been moved to module TcMonoType, since we don't have functional dependency information at this point.)
  • Checks that all variable occurrences are defined.
  • Checks the (..) etc constraints in the export list.

Brings the binders of the group into scope in the appropriate places; does NOT assume that anything is in scope already

addTcgDUs :: TcGblEnv -> DefUses -> TcGblEnv Source #

findSplice :: [LHsDecl GhcPs] -> RnM (HsGroup GhcPs, Maybe (SpliceDecl GhcPs, [LHsDecl GhcPs])) Source #