ghc-exactprint-0.6.2: ExactPrint for GHC
Using the API Annotations available from GHC 7.10.2, this library provides a means to round trip any code that can be compiled by GHC, currently excluding lhs files.
It does this with a phased approach
- Delta - converts GHC API Annotations into relative offsets, indexed by SrcSpan
- Transform - functions to facilitate changes to the AST, adjusting the annotations generated in the Delta phase to suit the changes.
- Print - converts an AST and its annotations to properly formatted source text.
- Pretty - adds annotations to an AST (fragment) so that the output can be parsed back to the same AST.
Note: requires GHC 7.10.2 or later
Signatures
Modules
- Language
- Haskell
- GHC
- Language.Haskell.GHC.ExactPrint
- Language.Haskell.GHC.ExactPrint.Annotate
- Language.Haskell.GHC.ExactPrint.AnnotateTypes
- Language.Haskell.GHC.ExactPrint.Annotater
- Language.Haskell.GHC.ExactPrint.Delta
- Language.Haskell.GHC.ExactPrint.Lookup
- Language.Haskell.GHC.ExactPrint.Parsers
- Language.Haskell.GHC.ExactPrint.Preprocess
- Language.Haskell.GHC.ExactPrint.Pretty
- Language.Haskell.GHC.ExactPrint.Print
- Language.Haskell.GHC.ExactPrint.Transform
- Language.Haskell.GHC.ExactPrint.Types
- Language.Haskell.GHC.ExactPrint.Utils
- Language.Haskell.GHC.ExactPrint
- GHC
- Haskell