module Language.Qux.Annotated.PrettyPrinter (
Pretty(..), Style(..), Mode(..),
render, renderStyle, renderOneLine
) where
import Language.Qux.Annotated.Simplify
import Language.Qux.Annotated.Syntax
import Language.Qux.PrettyPrinter
import Text.PrettyPrint (text)
instance Pretty (Id a) where
pPrint = text . sId
instance Pretty (Program a) where
pPrint = pPrint . sProgram
instance Pretty (Decl a) where
pPrint = pPrint . sDecl
instance Pretty (Stmt a) where
pPrint = pPrint . sStmt
instance Pretty (Expr a) where
pPrint = pPrint . sExpr
instance Pretty (Type a) where
pPrint = pPrint . sType