Several TH/quasiquote changes
[ghc-hetmet.git] / compiler / typecheck / TcSplice.lhs-boot
1 \begin{code}
2 module TcSplice where
3 import HsSyn    ( HsSplice, HsBracket, HsQuasiQuote,
4                   HsExpr, HsType, LHsType, LHsExpr, LPat, LHsDecl )
5 import Name     ( Name )
6 import RdrName  ( RdrName )
7 import TcRnTypes( TcM, TcId )
8 import TcType   ( BoxyRhoType, TcKind )
9 import Annotations ( Annotation, CoreAnnTarget )
10 import qualified Language.Haskell.TH as TH
11
12 tcSpliceExpr :: HsSplice Name
13              -> BoxyRhoType
14              -> TcM (HsExpr TcId)
15
16 kcSpliceType :: HsSplice Name
17              -> TcM (HsType Name, TcKind)
18
19 tcBracket :: HsBracket Name 
20           -> BoxyRhoType
21           -> TcM (LHsExpr TcId)
22
23 tcSpliceDecls :: LHsExpr Name -> TcM [LHsDecl RdrName]
24
25 lookupThName_maybe :: TH.Name -> TcM (Maybe Name)
26
27 runQuasiQuoteDecl :: HsQuasiQuote RdrName -> TcM [LHsDecl RdrName]
28 runQuasiQuoteExpr :: HsQuasiQuote RdrName -> TcM (LHsExpr RdrName)
29 runQuasiQuoteType :: HsQuasiQuote RdrName -> TcM (LHsType RdrName)
30 runQuasiQuotePat  :: HsQuasiQuote RdrName -> TcM (LPat RdrName)
31 runAnnotation     :: CoreAnnTarget -> LHsExpr Name -> TcM Annotation
32 \end{code}