{-# LANGUAGE DeriveFunctor #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE KindSignatures #-}
module Control.Effect.Empty.Internal
( Empty(..)
) where

import Control.Effect.Class
import GHC.Generics (Generic1)

-- | @since 1.0.0.0
data Empty (m :: * -> *) k = Empty
  deriving ((a -> b) -> Empty m a -> Empty m b
(forall a b. (a -> b) -> Empty m a -> Empty m b)
-> (forall a b. a -> Empty m b -> Empty m a) -> Functor (Empty m)
forall a b. a -> Empty m b -> Empty m a
forall a b. (a -> b) -> Empty m a -> Empty m b
forall (f :: * -> *).
(forall a b. (a -> b) -> f a -> f b)
-> (forall a b. a -> f b -> f a) -> Functor f
forall (m :: * -> *) a b. a -> Empty m b -> Empty m a
forall (m :: * -> *) a b. (a -> b) -> Empty m a -> Empty m b
<$ :: a -> Empty m b -> Empty m a
$c<$ :: forall (m :: * -> *) a b. a -> Empty m b -> Empty m a
fmap :: (a -> b) -> Empty m a -> Empty m b
$cfmap :: forall (m :: * -> *) a b. (a -> b) -> Empty m a -> Empty m b
Functor, (forall a. Empty m a -> Rep1 (Empty m) a)
-> (forall a. Rep1 (Empty m) a -> Empty m a) -> Generic1 (Empty m)
forall a. Rep1 (Empty m) a -> Empty m a
forall a. Empty m a -> Rep1 (Empty m) a
forall k (f :: k -> *).
(forall (a :: k). f a -> Rep1 f a)
-> (forall (a :: k). Rep1 f a -> f a) -> Generic1 f
forall (m :: * -> *) a. Rep1 (Empty m) a -> Empty m a
forall (m :: * -> *) a. Empty m a -> Rep1 (Empty m) a
$cto1 :: forall (m :: * -> *) a. Rep1 (Empty m) a -> Empty m a
$cfrom1 :: forall (m :: * -> *) a. Empty m a -> Rep1 (Empty m) a
Generic1)

instance HFunctor Empty
instance Effect   Empty