| Portability | portable |
|---|---|
| Stability | experimental |
| Maintainer | benedikt.huber@gmail.com |
| Safe Haskell | None |
Language.C.Pretty
Contents
Description
This module provides a pretty printer for the parse tree
(AST).
- class Pretty p where
- pretty :: p -> Doc
- prettyPrec :: Int -> p -> Doc
- prettyUsingInclude :: CTranslUnit -> Doc
Pretty Printing
A class of types which can be pretty printed
Methods
pretty print the given value
prettyPrec :: Int -> p -> DocSource
prettyPrec prec p pretty prints p assuming
that the surrounding context has a precedence of
prec
Instances
Testing
prettyUsingInclude :: CTranslUnit -> DocSource
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 useful
for testing, as otherwise the pretty printed file will be cluttered with declarations from system headers.