packages feed

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 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