diff --git a/hypertypes.cabal b/hypertypes.cabal index 696e34a..2e2cbc2 100644 --- a/hypertypes.cabal +++ b/hypertypes.cabal @@ -1,6 +1,6 @@ cabal-version: 1.12 --- This file has been generated from package.yaml by hpack version 0.37.0. +-- This file has been generated from package.yaml by hpack version 0.36.0. -- -- see: https://github.com/sol/hpack @@ -137,7 +137,7 @@ library , pretty , show-combinators , template-haskell - , th-abstraction >=0.3 + , th-abstraction >=0.6 , transformers default-language: Haskell2010 diff --git a/package.yaml b/package.yaml index 9e6010b..9106cbd 100644 --- a/package.yaml +++ b/package.yaml @@ -69,7 +69,7 @@ library: - show-combinators - template-haskell - transformers - - th-abstraction >= 0.3 + - th-abstraction >= 0.6 ghc-options: - -Wnoncanonical-monad-instances - -Wincomplete-record-updates diff --git a/src/Hyper/TH/Nodes.hs b/src/Hyper/TH/Nodes.hs index 7a1c524..cbcb0f9 100644 --- a/src/Hyper/TH/Nodes.hs +++ b/src/Hyper/TH/Nodes.hs @@ -12,6 +12,7 @@ import Hyper.Class.Nodes (HNodes (..), HWitness (..)) import Hyper.TH.Internal.Utils import Language.Haskell.TH import qualified Language.Haskell.TH.Datatype as D +import qualified Language.Haskell.TH.Datatype.TyVarBndr as D import Hyper.Internal.Prelude @@ -45,7 +46,7 @@ makeHNodesForType info = [ dataD (pure []) witTypeName - (tiParams info <> [plainTV (mkName "node")]) + (((D.defaultBndrFlag <$) <$> tiParams info) <> [plainTV (mkName "node")]) Nothing (nodeOfCons <&> (witType >>=)) [] diff --git a/stack.yaml b/stack.yaml index ad813de..c093b7d 100644 --- a/stack.yaml +++ b/stack.yaml @@ -1,3 +1,5 @@ resolver: lts-22.33 packages: - . +extra-deps: +- th-abstraction-0.7.0.0@sha256:4d80fe53ed140866018278c81e1c0c9bc8fc73d8f2a530321a588f24be491fc4,2248 \ No newline at end of file diff --git a/test/ReadMeExamples.hs b/test/ReadMeExamples.hs index abc88e4..4d955a4 100644 --- a/test/ReadMeExamples.hs +++ b/test/ReadMeExamples.hs @@ -55,10 +55,11 @@ data RExpr h , HTraversable , ZipMatch , RNodes - , Recursively c , RTraversable ) +instance (c RExpr, c Typ) => Recursively c RExpr + makeHasHPlain [''Expr, ''Typ, ''RExpr] verboseExpr :: Pure # Expr