{-# LANGUAGE AllowAmbiguousTypes #-}
{-# LANGUAGE MultiParamTypeClasses #-}
{-# LANGUAGE ScopedTypeVariables #-}
{-# LANGUAGE TypeApplications #-}
module Test.Monad.Base where
import Control.Monad.Base
import Test.QuickCheck.HigherOrder (Equation(..))
import Test.Monad.Morph
liftBase_return
:: forall m n a
. MonadBase n m
=> a -> Equation (m a)
liftBase_return = returnHom @_ @m liftBase
liftBase_bind
:: forall m n a b
. MonadBase n m
=> n a -> (a -> n b) -> Equation (m b)
liftBase_bind = bindHom @_ @m liftBase