lift-generics
Version 0.2.1 revision 0 uploaded by ryanglscott.
Package meta
- Synopsis
- GHC.Generics-based Language.Haskell.TH.Syntax.lift implementation
- Description
This package provides a GHC.Generics-based
genericLift
function (only available on GHC 7.4 and later), as well as agenericLiftWithPkgFallback
function (for code that must support GHC 7.2 and earlier) and agenericLiftWithPkg
function (for use when neither of the above will work), all of which can be used for providing aLanguage.Haskell.TH.Syntax.lift
implementation. See the documentation in the Language.Haskell.TH.Lift.Generics module to get started.Credit goes to Matthew Pickering for suggesting this idea.
Note that due to API limitations, GHC.Generics wasn't powerful enough to come up with the entirety of a lift implementation prior to GHC 8.0. For GHC 7.4 and later, we can pluck this information out of Typeable. For earlier versions, and where Typeable isn't available,
genericLiftWithPkg
requires you to produce the package name yourself, which proves to be no small feat (see the documentation for more info).Luckily, you don't have to jump through as many hoops on GHC 7.4 and later: simply use the
genericLift
function, and life is good.- Author
- Ryan Scott
- Bug reports
- https://github.com/RyanGlScott/lift-generics/issues
- Category
- Language
- Copyright
- (C) 2015-2017 Ryan Scott
- Homepage
- https://github.com/RyanGlScott/lift-generics
- Maintainer
- Ryan Scott <ryan.gl.scott@gmail.com>
- Package URL
- n/a
- Stability
- Experimental