HaXml-1.22.5: Utilities for manipulating XML documents

Safe HaskellSafe-Infered

Text.XML.HaXml.Schema.PrettyHaskell

Description

Pretty-print the internal Haskell model of XSD datatypes to a real Haskell module containing type declarations, and instances for parsing (and printing - though not yet implemented) values of those datatypes from(/to) XML.

Synopsis

Documentation

ppComment :: CommentPosition -> Comment -> DocSource

Generate aligned haddock-style documentation. (but without escapes in comment text yet)

ppModule :: NameConverter -> Module -> DocSource

Convert a whole document from HaskellTypeModel to Haskell source text.

ppHighLevelDecl :: NameConverter -> Decl -> DocSource

Convert a single Haskell Decl into Haskell source text.

ppHighLevelDecls :: NameConverter -> [Decl] -> DocSource

Convert multiple HaskellTypeModel Decls to Haskell source text.

ppModuleWithInstances :: NameConverter -> Module -> DocSource

Generate a supplementary module to contain instances, especially for types that needed to be forward-declared.

ppHighLevelInstances :: NameConverter -> Decl -> DocSource

Instances that depend on FwdDecl'd types, need to be declared in a different module. So they have been separated out from ppHighLevelDecl.

ppvList :: String -> String -> String -> (a -> Doc) -> [a] -> DocSource

Vertically pretty-print a list of things, with open and close brackets, and separators.