lift-generics 0.1.1 → 0.1.2
raw patch · 6 files changed
+29/−10 lines, 6 filesdep ~lift-genericsdep ~template-haskellPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: lift-generics, template-haskell
API changes (from Hackage documentation)
- Language.Haskell.TH.Lift.Generics: instance Language.Haskell.TH.Lift.Generics.GLiftArgs Generics.Deriving.Base.UAddr
- Language.Haskell.TH.Lift.Generics: instance Language.Haskell.TH.Lift.Generics.GLiftArgs Generics.Deriving.Base.UDouble
- Language.Haskell.TH.Lift.Generics: instance Language.Haskell.TH.Lift.Generics.GLiftArgs Generics.Deriving.Base.UFloat
- Language.Haskell.TH.Lift.Generics: instance Language.Haskell.TH.Lift.Generics.GLiftArgs Generics.Deriving.Base.UInt
- Language.Haskell.TH.Lift.Generics: instance Language.Haskell.TH.Lift.Generics.GLiftArgs Generics.Deriving.Base.UWord
+ Language.Haskell.TH.Lift.Generics: genericLift :: (Generic a, GLift (Rep a)) => a -> Q Exp
+ Language.Haskell.TH.Lift.Generics: instance Language.Haskell.TH.Lift.Generics.GLiftArgs GHC.Generics.UAddr
+ Language.Haskell.TH.Lift.Generics: instance Language.Haskell.TH.Lift.Generics.GLiftArgs GHC.Generics.UChar
+ Language.Haskell.TH.Lift.Generics: instance Language.Haskell.TH.Lift.Generics.GLiftArgs GHC.Generics.UDouble
+ Language.Haskell.TH.Lift.Generics: instance Language.Haskell.TH.Lift.Generics.GLiftArgs GHC.Generics.UFloat
+ Language.Haskell.TH.Lift.Generics: instance Language.Haskell.TH.Lift.Generics.GLiftArgs GHC.Generics.UInt
+ Language.Haskell.TH.Lift.Generics: instance Language.Haskell.TH.Lift.Generics.GLiftArgs GHC.Generics.UWord
+ Language.Haskell.TH.Lift.Generics: instance Language.Haskell.TH.Lift.Generics.GLiftArgs GHC.Generics.V1
Files
- CHANGELOG.md +4/−0
- LICENSE +1/−1
- lift-generics.cabal +7/−6
- src/Language/Haskell/TH/Lift/Generics.hs +15/−1
- tests/LiftGenericsSpec.hs +1/−1
- tests/Types.hs +1/−1
CHANGELOG.md view
@@ -1,3 +1,7 @@+### 0.1.2+* Add a case for `V1` (i.e., empty data types), which diverges in the way+ you'd expect.+ ### 0.1.1 * Fix test suite on GHC 8.0
LICENSE view
@@ -1,4 +1,4 @@-Copyright (c) 2015, Ryan Scott+Copyright (c) 2015-2017, Ryan Scott All rights reserved.
lift-generics.cabal view
@@ -1,5 +1,5 @@ name: lift-generics-version: 0.1.1+version: 0.1.2 synopsis: GHC.Generics-based Language.Haskell.TH.Syntax.lift implementation description: This package provides a "GHC.Generics"-based @genericLiftWithPkg@ function (intended for GHC 7.10 and earlier), as well as a@@ -27,7 +27,7 @@ author: Ryan Scott maintainer: Ryan Scott <ryan.gl.scott@gmail.com> stability: Experimental-copyright: (C) 2015 Ryan Scott+copyright: (C) 2015-2017 Ryan Scott category: Language build-type: Simple tested-with: GHC == 7.0.4@@ -36,7 +36,8 @@ , GHC == 7.6.3 , GHC == 7.8.4 , GHC == 7.10.3- , GHC == 8.0.1+ , GHC == 8.0.2+ , GHC == 8.2.2 extra-source-files: CHANGELOG.md, README.md cabal-version: >=1.10 @@ -49,7 +50,7 @@ build-depends: base >= 4.3 && < 5 , generic-deriving >= 1.9 && < 2 , ghc-prim- , template-haskell >= 2.4 && < 2.12+ , template-haskell >= 2.4 && < 2.13 hs-source-dirs: src default-language: Haskell2010 ghc-options: -Wall@@ -64,8 +65,8 @@ , base-compat >= 0.8.2 && < 1 , generic-deriving >= 1.9 && < 2 , hspec >= 2 && < 3- , lift-generics == 0.1.1- , template-haskell >= 2.4 && < 2.12+ , lift-generics+ , template-haskell >= 2.4 && < 2.13 hs-source-dirs: tests default-language: Haskell2010 ghc-options: -Wall -threaded -rtsopts
src/Language/Haskell/TH/Lift/Generics.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE BangPatterns #-} {-# LANGUAGE CPP #-} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE FlexibleInstances #-}@@ -5,9 +6,13 @@ {-# LANGUAGE TypeOperators #-} {-# LANGUAGE TypeSynonymInstances #-} +#if __GLASGOW_HASKELL__ >= 708+{-# LANGUAGE EmptyCase #-}+#endif+ {-| Module: Language.Haskell.TH.Lift.Generics-Copyright: (C) 2015-2016 Ryan Scott+Copyright: (C) 2015-2017 Ryan Scott License: BSD-style (see the file LICENSE) Maintainer: Ryan Scott @@ -179,6 +184,15 @@ -- purposes. class GLiftArgs f where gliftArgs :: f a -> [Q Exp]++instance GLiftArgs V1 where+ gliftArgs x =+ (:[]) $ return $ case x of+#if __GLASGOW_HASKELL__ >= 708+ {}+#else+ !_ -> undefined+#endif instance GLiftArgs U1 where gliftArgs U1 = []
tests/LiftGenericsSpec.hs view
@@ -2,7 +2,7 @@ {-| Module: LiftGenericsSpec-Copyright: (C) 2015-2016 Ryan Scott+Copyright: (C) 2015-2017 Ryan Scott License: BSD-style (see the file LICENSE) Maintainer: Ryan Scott
tests/Types.hs view
@@ -9,7 +9,7 @@ {-| Module: Types-Copyright: (C) 2015-2016 Ryan Scott+Copyright: (C) 2015-2017 Ryan Scott License: BSD-style (see the file LICENSE) Maintainer: Ryan Scott