| language-c-0.3.1.1: Analysis and generation of C code | Source code | Contents | Index
Language.C.Pretty |
Portability | portable
Stability | experimental
Maintainer | benedikt.huber@gmail.com
Contents
Pretty Printing Testing
Description
This module provides a pretty printer for the parse tree (Language.C.Syntax.AST).
Synopsis
class Pretty p where
pretty :: p -> Doc
prettyPrec :: Int -> p -> Doc
prettyUsingInclude :: CTranslUnit -> Doc
Pretty Printing
class Pretty p where | Source
A class of types which can be pretty printed
Methods
pretty :: p -> Doc | Source
pretty print the given value
prettyPrec :: Int -> p -> Doc | Source
`prettyPrec prec p` pretty prints p assuming that the surrounding context has a precedence of `prec`
Instances
Pretty CUnaryOp
Pretty CBinaryOp
Pretty CAssignOp
Pretty Ident
Pretty SUERef
Pretty CStrLit
Pretty CConst
Pretty CBuiltin
Pretty CExpr
Pretty CAttr
Pretty CDesignator
Pretty CInit
Pretty CEnum
Pretty CStructTag
Pretty CStructUnion
Pretty CTypeQual
Pretty CTypeSpec
Pretty CStorageSpec
Pretty CDeclSpec
Pretty CBlockItem
Pretty CAsmOperand
Pretty CAsmStmt
Pretty CStat
Pretty CArrSize
Pretty CDeclr
Pretty CDecl
Pretty CFunDef
Pretty CExtDecl
Pretty CTranslUnit
Pretty Attributes
Pretty Attr
Pretty VarName
Pretty TypeQuals
Pretty Enumerator
Pretty EnumType
Pretty CompType
Pretty Type
Pretty Linkage
Pretty Storage
Pretty DeclAttrs
Pretty VarDecl
Pretty TypeDef
Pretty MemberDecl
Pretty ParamDecl
Pretty FunDef
Pretty ObjDef
Pretty Decl
Pretty GlobalDecls
Pretty IdentDecl
Pretty TagDef
Pretty (Either VarDecl FunDef)
Pretty (Either VarDecl ObjDef)
Testing
prettyUsingInclude :: CTranslUnit -> Doc | Source
Pretty print the given tranlation unit, but replace declarations from header files with `#include` directives. The resulting file may not compile (because of missing `#define` directives and similar things), but is very usefull for testing, as otherwise the pretty printed file will be cluttered with declarations from system headers.
Produced by Haddock version 2.4.2