{-# options_haddock prune #-}
module Polysemy.Test.Data.Hedgehog where
import Hedgehog (TestT)
data Hedgehog m :: Effect where
LiftH :: TestT m a -> Hedgehog m n a
liftH ::
∀ m a r .
Member (Hedgehog m) r =>
TestT m a ->
Sem r a
liftH :: forall (m :: * -> *) a (r :: [(* -> *) -> * -> *]).
Member (Hedgehog m) r =>
TestT m a -> Sem r a
liftH =
Hedgehog m (Sem r) a -> Sem r a
forall (e :: (* -> *) -> * -> *) (r :: [(* -> *) -> * -> *]) a.
Member e r =>
e (Sem r) a -> Sem r a
send (Hedgehog m (Sem r) a -> Sem r a)
-> (TestT m a -> Hedgehog m (Sem r) a) -> TestT m a -> Sem r a
forall b c a. (b -> c) -> (a -> b) -> a -> c
. TestT m a -> Hedgehog m (Sem r) a
forall (m :: * -> *) a (n :: * -> *). TestT m a -> Hedgehog m n a
LiftH