| Copyright | Copyright (c) 2016 the Hakaru team |
|---|---|
| License | BSD3 |
| Maintainer | zsulliva@indiana.edu |
| Stability | experimental |
| Portability | GHC-only An AST for the C Family and preprocessor |
| Safe Haskell | Safe |
| Language | Haskell2010 |
Language.Hakaru.CodeGen.AST
Description
Much of this is based on Manuel M T Chakravarty and Benedikt Hubar's "language-c" package
Documentation
data Preprocessor Source #
Constructors
| PPDefine String String | |
| PPInclude String | |
| PPUndef String | |
| PPIf String | |
| PPIfDef String | |
| PPIfNDef String | |
| PPElse String | |
| PPElif String | |
| PPEndif String | |
| PPError String | |
| PPPragma [String] |
Instances
Constructors
| CDeclExt CDecl | |
| CFunDefExt CFunDef | |
| CCommentExt String | |
| CPPExt Preprocessor |
Constructors
| CDeclr (Maybe CPtrDeclr) [CDirectDeclr] |
Constructors
| CStorageSpec CStorageSpec | |
| CTypeSpec CTypeSpec | |
| CTypeQual CTypeQual | |
| CFunSpec CFunSpec |
data CStorageSpec Source #
Instances
Constructors
| CConstQual | |
| CVolatQual |
data CDirectDeclr Source #
Constructors
| CDDeclrIdent Ident | |
| CDDeclrArr CDirectDeclr CExpr | |
| CDDeclrFun CDirectDeclr [CTypeSpec] |
Instances
Constructors
| CStructTag | |
| CUnionTag |
Constructors
| CInitExpr CExpr | |
| CInitList [([CPartDesig], CInit)] |
Constructors
| Inline |
Constructors
data CCompoundBlockItem Source #
Constructors
| CBlockStat CStat | |
| CBlockDecl CDecl |
Constructors
Constructors
| CIntConst Integer | |
| CCharConst Char | |
| CFloatConst Float | |
| CStringConst String |
Constructors
| CPreIncOp | |
| CPreDecOp | |
| CPostIncOp | |
| CPostDecOp | |
| CAdrOp | |
| CIndOp | |
| CPlusOp | |
| CMinOp | |
| CCompOp | |
| CNegOp |
negInfinityE :: CExpr Source #