summaryrefslogtreecommitdiff
path: root/src/runtime/haskell/PGF/Expr.hs-boot
blob: 34a62a4108eed2054750da974de11d5ec82e6c97 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
module PGF.Expr where

import PGF.CId
import qualified Text.PrettyPrint as PP
import qualified Text.ParserCombinators.ReadP as RP

data Expr

instance Eq   Expr
instance Ord  Expr
instance Show Expr


data BindType = Explicit | Implicit

instance Eq   BindType
instance Ord  BindType
instance Show BindType


pArg   :: RP.ReadP Expr
pBinds :: RP.ReadP [(BindType,CId)]

ppExpr :: Int -> [CId] -> Expr -> PP.Doc

freshName :: CId -> [CId] -> CId

ppParens :: Bool -> PP.Doc -> PP.Doc