th-utilities 0.2.3.0 → 0.2.3.1
raw patch · 3 files changed
+35/−10 lines, 3 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- ChangeLog.md +4/−0
- src/TH/ReifySimple.hs +29/−8
- th-utilities.cabal +2/−2
ChangeLog.md view
@@ -1,5 +1,9 @@ # ChangeLog +## 0.2.3.1++* Compatibility with GHC-8.8+ ## 0.2.3.0 * Improved fix to the type variable behavior with GHC <= 7.10. Uses
src/TH/ReifySimple.hs view
@@ -233,18 +233,24 @@ Just $ DataFamily name (map tyVarBndrName tvs) (map go insts) _ -> Nothing where-#if MIN_VERSION_template_haskell(2,11,0)- go (NewtypeInstD preds name params _kind con _deriving) =+#if MIN_VERSION_template_haskell(2,15,0)+ go (NewtypeInstD preds _ lhs _kind con _deriving)+ | ConT name:params <- unAppsT lhs+#elif MIN_VERSION_template_haskell(2,11,0)+ go (NewtypeInstD preds name params _kind con _deriving) #else- go (NewtypeInstD preds name params con _deriving) =+ go (NewtypeInstD preds name params con _deriving) #endif- DataInst name preds params (conToDataCons con)-#if MIN_VERSION_template_haskell(2,11,0)- go (DataInstD preds name params _kind cons _deriving) =+ = DataInst name preds params (conToDataCons con)+#if MIN_VERSION_template_haskell(2,15,0)+ go (DataInstD preds _ lhs _kind cons _deriving)+ | ConT name:params <- unAppsT lhs+#elif MIN_VERSION_template_haskell(2,11,0)+ go (DataInstD preds name params _kind cons _deriving) #else- go (DataInstD preds name params cons _deriving) =+ go (DataInstD preds name params cons _deriving) #endif- DataInst name preds params (concatMap conToDataCons cons)+ = DataInst name preds params (concatMap conToDataCons cons) go info' = error $ "Unexpected instance in FamilyI in infoToDataInsts:\n" ++ pprint info' @@ -263,8 +269,23 @@ #endif _ -> Nothing where+#if MIN_VERSION_template_haskell(2,15,0)+ goEqn _ (TySynEqn _ lhs ty)+ | ConT name:params <- unAppsT lhs+ = TypeInst name params ty+ | otherwise+ = error $ "Unexpected type family instance head: " ++ pprint lhs+#else goEqn name (TySynEqn params ty) = TypeInst name params ty+#endif++#if MIN_VERSION_template_haskell(2,15,0)+ go (TySynInstD (TySynEqn _ lhs ty))+ | ConT name:params <- unAppsT lhs+ = TypeInst name params ty+#else go (TySynInstD name (TySynEqn params ty)) = TypeInst name params ty+#endif go info' = error $ "Unexpected instance in FamilyI in infoToTypeInsts:\n" ++ pprint info'
th-utilities.cabal view
@@ -4,10 +4,10 @@ -- -- see: https://github.com/sol/hpack ----- hash: 7886213bf6588ab61ba8582e6dc179a0d841c4c383fc63021383e7abd1a5dde0+-- hash: bda1ef012fe2084207b76af87373ec5568167d027ce8878be222946dc4a82d5b name: th-utilities-version: 0.2.3.0+version: 0.2.3.1 synopsis: Collection of useful functions for use with Template Haskell category: Template Haskell homepage: https://github.com/fpco/th-utilities#readme