language-c-0.3.2.1: Analysis and generation of C code

Portabilityportable
Stabilityexperimental
Maintainerbenedikt.huber@gmail.com

Language.C.Pretty

Contents

Description

This module provides a pretty printer for the parse tree (Language.C.Syntax.AST).

Synopsis

Pretty Printing

class Pretty p whereSource

A class of types which can be pretty printed

Methods

pretty :: p -> DocSource

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

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 usefull for testing, as otherwise the pretty printed file will be cluttered with declarations from system headers.