Safe Haskell | None |
---|---|
Language | Haskell2010 |
- class Enter typ arg ret | typ arg -> ret, typ ret -> arg where
- enter :: arg -> typ -> ret
- newtype m :~> n = Nat {
- unNat :: forall a. m a -> n a
- liftNat :: (MonadTrans t, Monad m) => m :~> t m
- runReaderTNat :: r -> ReaderT r m :~> m
- evalStateTLNat :: Monad m => s -> StateT s m :~> m
- evalStateTSNat :: Monad m => s -> StateT s m :~> m
- logWriterTSNat :: MonadIO m => (w -> IO ()) -> WriterT w m :~> m
- logWriterTLNat :: MonadIO m => (w -> IO ()) -> WriterT w m :~> m
- hoistNat :: (MFunctor t, Monad m) => (m :~> n) -> t m :~> t n
- embedNat :: (MMonad t, Monad n) => (m :~> t n) -> t m :~> t n
- squashNat :: (Monad m, MMonad t) => t (t m) :~> t m
- generalizeNat :: Applicative m => Identity :~> m
Documentation
Servant combinators
Useful instances
runReaderTNat :: r -> ReaderT r m :~> m
evalStateTLNat :: Monad m => s -> StateT s m :~> m
evalStateTSNat :: Monad m => s -> StateT s m :~> m
logWriterTSNat :: MonadIO m => (w -> IO ()) -> WriterT w m :~> m
logWriterTLNat :: MonadIO m => (w -> IO ()) -> WriterT w m :~> m
Like logWriterTSNat
, but for strict WriterT
.
generalizeNat :: Applicative m => Identity :~> m
Like mmorph
's generalize
.