th-data-compat 0.1.2.0 → 0.1.3.0
raw patch · 4 files changed
+46/−5 lines, 4 files
Files
- src/Language/Haskell/TH/Compat/Data.hs +8/−2
- src/Language/Haskell/TH/Compat/TyVarBndr/Current.hs +13/−0
- src/Language/Haskell/TH/Compat/TyVarBndr/V216.hs +14/−0
- th-data-compat.cabal +11/−3
src/Language/Haskell/TH/Compat/Data.hs view
@@ -13,10 +13,10 @@ -- data-type declaration templates for before temaplate-haskell-2.11 module Language.Haskell.TH.Compat.Data ( -- * Interfaces to construct data declarations- dataD', newtypeD', dataInstD', newtypeInstD',+ dataD', newtypeD', dataInstD', newtypeInstD', plainTVspecified, -- * Interfaces to destruct data declarations- unDataD, unNewtypeD, unDataInstD, unNewtypeInstD, unInstanceD,+ unDataD, unNewtypeD, unDataInstD, unNewtypeInstD, unInstanceD, unTyVarBndr, ) where #if MIN_VERSION_template_haskell(2,17,0)@@ -29,4 +29,10 @@ import Language.Haskell.TH.Compat.Data.V211 #else import Language.Haskell.TH.Compat.Data.V210+#endif++#if MIN_VERSION_template_haskell(2,17,0)+import Language.Haskell.TH.Compat.TyVarBndr.Current+#else+import Language.Haskell.TH.Compat.TyVarBndr.V216 #endif
+ src/Language/Haskell/TH/Compat/TyVarBndr/Current.hs view
@@ -0,0 +1,13 @@+module Language.Haskell.TH.Compat.TyVarBndr.Current (+ plainTVspecified,+ unTyVarBndr,+ ) where++import Language.Haskell.TH (Name, TyVarBndr (..), Specificity (SpecifiedSpec))++plainTVspecified :: Name -> TyVarBndr Specificity+plainTVspecified n = PlainTV n SpecifiedSpec++unTyVarBndr :: TyVarBndr a -> (Name, Maybe a)+unTyVarBndr (PlainTV n f) = (n, Just f)+unTyVarBndr (KindedTV n f _k) = (n, Just f)
+ src/Language/Haskell/TH/Compat/TyVarBndr/V216.hs view
@@ -0,0 +1,14 @@+-- The latest version of applying this module impl is template-haskell-2.16+module Language.Haskell.TH.Compat.TyVarBndr.V216 (+ plainTVspecified,+ unTyVarBndr,+ ) where++import Language.Haskell.TH (Name, TyVarBndr (..))++plainTVspecified :: Name -> TyVarBndr+plainTVspecified = PlainTV++unTyVarBndr :: TyVarBndr -> (Name, Maybe a)+unTyVarBndr (PlainTV n) = (n, Nothing)+unTyVarBndr (KindedTV n _k) = (n, Nothing)
th-data-compat.cabal view
@@ -1,6 +1,6 @@ name: th-data-compat-version: 0.1.2.0+version: 0.1.3.0 synopsis: Compatibility for data definition template of TH description: This package contains wrapped name definitions of data definition template@@ -12,8 +12,9 @@ category: Language build-type: Simple cabal-version: >=1.10-tested-with: GHC == 9.4.4- , GHC == 9.2.1, GHC == 9.2.2, GHC == 9.2.5+tested-with: GHC == 9.6.2+ , GHC == 9.4.4, GHC == 9.4.6+ , GHC == 9.2.1, GHC == 9.2.2, GHC == 9.2.5, GHC == 9.2.8 , GHC == 9.0.1, GHC == 9.0.2 , GHC == 8.10.1, GHC == 8.10.2, GHC == 8.10.3, GHC == 8.10.4, GHC == 8.10.5, GHC == 8.10.6, GHC == 8.10.7 , GHC == 8.8.1, GHC == 8.8.2, GHC == 8.8.3@@ -54,6 +55,13 @@ other-modules: Language.Haskell.TH.Compat.Data.V210 build-depends: template-haskell >=2.4 && <2.11++ if impl(ghc >= 9.0)+ other-modules:+ Language.Haskell.TH.Compat.TyVarBndr.Current+ else+ other-modules:+ Language.Haskell.TH.Compat.TyVarBndr.V216 build-depends: base <5