Language.Python.Common.Pretty

language-python-0.5.2: Parsing and pretty printing of Python code.

Copyright | (c) 2009 Bernie Pope
License | BSD-style
Maintainer | bjpop@csse.unimelb.edu.au
Stability | experimental
Portability | ghc
Safe Haskell | Safe
Language | Haskell98

Language.Python.Common.Pretty

Description

Convenience class for pretty printing combinators.

Synopsis

- class Pretty a where
  - pretty :: a -> Doc
- prettyText :: Pretty a => a -> String
- prettyPrefix :: Pretty a => Int -> a -> Doc
- parensIf :: Pretty a => (a -> Bool) -> a -> Doc
- perhaps :: Pretty a => Maybe a -> Doc -> Doc
- commaList :: Pretty a => [a] -> Doc

# Documentation

class Pretty a where

All types which can be transformed into a `Doc`.

Methods

pretty :: a -> Doc

Instances

Pretty Bool |
Pretty Double |
Pretty Int |
Pretty Integer |
Pretty String |
Pretty SrcSpan |
Pretty SrcLocation |
Pretty a => Pretty (Maybe a) |

prettyText :: Pretty a => a -> String

Transform values into strings.

prettyPrefix :: Pretty a => Int -> a -> Doc

Print just the prefix of something

parensIf :: Pretty a => (a -> Bool) -> a -> Doc

Conditionally wrap parentheses around an item.

perhaps :: Pretty a => Maybe a -> Doc -> Doc

commaList :: Pretty a => [a] -> Doc

A list of things separated by commas.