ghc-hs-meta

Translate Haskell source to Template Haskell expression

LTS Haskell 23.1:0.1.4.0
Stackage Nightly 2024-12-26:0.1.4.0
Latest on Hackage:0.1.4.0

See all snapshots ghc-hs-meta appears in

BSD-3-Clause licensed by Zachary Wood
Maintained by [email protected]
This version can be pinned in stack with:ghc-hs-meta-0.1.4.0@sha256:3be08518f036c91d0a17808d58ceb5b753f8e6784df9fb7b675cb8f95bc27016,1362

Module documentation for 0.1.4.0

ghc-hs-meta

Generate Template Haskell expressions from Haskell source code using the GHC parser. This package runs on GHC versions 8.10, 9.0, 9.2, 9.4, 9.6 and 9.8.

Usage

Pass a String containing Haskell source code to parseExp. Example from the tests:

case parseExp "a @b" of
    Right exp -> exp `shouldBe` TH.AppTypeE (TH.VarE (TH.mkName "a")) (TH.VarT (TH.mkName "b"))
    Left (_, _, errMsg) -> error errMsg

See Hackage documentation for more documentation.

Thank you, PyF

This code originated from the excellent parser included in the PyF package. I extracted the relevant code and refactored/renamed things to be usable in a more general context. Without PyF, this could wouldn’t have been possible. Thank you!

The original license for PyF can be found in the LICENSE-PyF file included in this repository.

Changes

0.1.4.0

  • Support GHC 9.10

0.1.3.0

  • Support GHC 9.8

0.1.2.0

  • Support GHC 9.6

0.1.1.0

  • Support GHC 9.4

0.1.0.0

Initial release.