haskell-src-exts-0.4.8: Manipulating Haskell source: abstract syntax, lexer, parser, and pretty-printerContentsIndex
Language.Haskell.Exts.Build
Portabilityportable
Stabilityexperimental
MaintainerNiklas Broberg, d00nibro@dtek.chalmers.se
Contents
Syntax building functions
More advanced building
Description
Synopsis
name :: String -> Name
sym :: String -> Name
var :: Name -> Exp
op :: Name -> QOp
qvar :: ModuleName -> Name -> Exp
pvar :: Name -> Pat
app :: Exp -> Exp -> Exp
infixApp :: Exp -> QOp -> Exp -> Exp
appFun :: Exp -> [Exp] -> Exp
pApp :: Name -> [Pat] -> Pat
tuple :: [Exp] -> Exp
pTuple :: [Pat] -> Pat
varTuple :: [Name] -> Exp
pvarTuple :: [Name] -> Pat
function :: String -> Exp
strE :: String -> Exp
charE :: Char -> Exp
intE :: Integer -> Exp
strP :: String -> Pat
charP :: Char -> Pat
intP :: Integer -> Pat
doE :: [Stmt] -> Exp
lamE :: SrcLoc -> [Pat] -> Exp -> Exp
letE :: [Decl] -> Exp -> Exp
caseE :: Exp -> [Alt] -> Exp
alt :: SrcLoc -> Pat -> Exp -> Alt
altGW :: SrcLoc -> Pat -> [Stmt] -> Exp -> Binds -> Alt
listE :: [Exp] -> Exp
eList :: Exp
peList :: Pat
paren :: Exp -> Exp
pParen :: Pat -> Pat
qualStmt :: Exp -> Stmt
genStmt :: SrcLoc -> Pat -> Exp -> Stmt
letStmt :: [Decl] -> Stmt
binds :: [Decl] -> Binds
noBinds :: Binds
wildcard :: Pat
genNames :: String -> Int -> [Name]
sfun :: SrcLoc -> Name -> [Name] -> Rhs -> Binds -> Decl
simpleFun :: SrcLoc -> Name -> Name -> Exp -> Decl
patBind :: SrcLoc -> Pat -> Exp -> Decl
patBindWhere :: SrcLoc -> Pat -> Exp -> [Decl] -> Decl
nameBind :: SrcLoc -> Name -> Exp -> Decl
metaFunction :: String -> [Exp] -> Exp
metaConPat :: String -> [Pat] -> Pat
Syntax building functions
name :: String -> Name
sym :: String -> Name
var :: Name -> Exp
op :: Name -> QOp
qvar :: ModuleName -> Name -> Exp
pvar :: Name -> Pat
app :: Exp -> Exp -> Exp
infixApp :: Exp -> QOp -> Exp -> Exp
appFun :: Exp -> [Exp] -> Exp
pApp :: Name -> [Pat] -> Pat
tuple :: [Exp] -> Exp
pTuple :: [Pat] -> Pat
varTuple :: [Name] -> Exp
pvarTuple :: [Name] -> Pat
function :: String -> Exp
strE :: String -> Exp
charE :: Char -> Exp
intE :: Integer -> Exp
strP :: String -> Pat
charP :: Char -> Pat
intP :: Integer -> Pat
doE :: [Stmt] -> Exp
lamE :: SrcLoc -> [Pat] -> Exp -> Exp
letE :: [Decl] -> Exp -> Exp
caseE :: Exp -> [Alt] -> Exp
alt :: SrcLoc -> Pat -> Exp -> Alt
altGW :: SrcLoc -> Pat -> [Stmt] -> Exp -> Binds -> Alt
listE :: [Exp] -> Exp
eList :: Exp
peList :: Pat
paren :: Exp -> Exp
pParen :: Pat -> Pat
qualStmt :: Exp -> Stmt
genStmt :: SrcLoc -> Pat -> Exp -> Stmt
letStmt :: [Decl] -> Stmt
binds :: [Decl] -> Binds
noBinds :: Binds
wildcard :: Pat
genNames :: String -> Int -> [Name]
More advanced building
sfun :: SrcLoc -> Name -> [Name] -> Rhs -> Binds -> Decl
A function with a single match
simpleFun :: SrcLoc -> Name -> Name -> Exp -> Decl
A function with a single match, a single argument, no guards and no where declarations
patBind :: SrcLoc -> Pat -> Exp -> Decl
A pattern bind where the pattern is a variable, and where there are no guards and no 'where' clause.
patBindWhere :: SrcLoc -> Pat -> Exp -> [Decl] -> Decl
nameBind :: SrcLoc -> Name -> Exp -> Decl
metaFunction :: String -> [Exp] -> Exp
metaConPat :: String -> [Pat] -> Pat
Produced by Haddock version 2.3.0