Typos in comments only [ci skip]
[ghc.git] / compiler / typecheck / TcExpr.hs-boot
1 module TcExpr where
2 import HsSyn    ( HsExpr, LHsExpr, SyntaxExpr )
3 import Name     ( Name )
4 import TcType   ( TcRhoType, TcSigmaType, SyntaxOpType, ExpType, ExpRhoType )
5 import TcRnTypes( TcM, TcId, CtOrigin )
6
7 tcPolyExpr ::
8           LHsExpr Name
9        -> TcSigmaType
10        -> TcM (LHsExpr TcId)
11
12 tcMonoExpr, tcMonoExprNC ::
13           LHsExpr Name
14        -> ExpRhoType
15        -> TcM (LHsExpr TcId)
16
17 tcInferSigma, tcInferSigmaNC ::
18           LHsExpr Name
19        -> TcM (LHsExpr TcId, TcSigmaType)
20
21 tcInferRho ::
22           LHsExpr Name
23        -> TcM (LHsExpr TcId, TcRhoType)
24
25 tcSyntaxOp :: CtOrigin
26            -> SyntaxExpr Name
27            -> [SyntaxOpType]           -- ^ shape of syntax operator arguments
28            -> ExpType                  -- ^ overall result type
29            -> ([TcSigmaType] -> TcM a) -- ^ Type check any arguments
30            -> TcM (a, SyntaxExpr TcId)
31
32 tcSyntaxOpGen :: CtOrigin
33               -> SyntaxExpr Name
34               -> [SyntaxOpType]
35               -> SyntaxOpType
36               -> ([TcSigmaType] -> TcM a)
37               -> TcM (a, SyntaxExpr TcId)
38
39
40 tcCheckId :: Name -> ExpRhoType -> TcM (HsExpr TcId)