2021-10-25 19:04:24 +03:00
|
|
|
{-# LANGUAGE DerivingVia #-}
|
2022-05-16 21:42:11 +03:00
|
|
|
module Reddit.Publish where
|
2021-10-25 19:04:24 +03:00
|
|
|
|
|
|
|
import Data.Functor.Contravariant
|
2021-10-27 23:21:09 +03:00
|
|
|
import Data.Monoid (Ap(..))
|
2021-10-25 19:04:24 +03:00
|
|
|
|
|
|
|
newtype Publish m a = Publish { publish :: a -> m () }
|
|
|
|
deriving Contravariant via (Op (m ()))
|
2021-10-27 23:21:09 +03:00
|
|
|
deriving (Monoid, Semigroup) via (Op (Ap m ()) a)
|