simpoole-0.4.0: Simple pool
Safe HaskellNone
LanguageHaskell2010

Simpoole.Monad.Class

Synopsis

Documentation

class MonadPool resource m where Source #

A pooled resource is available through m

Since: 0.3.0

Methods

withResource :: (resource -> m a) -> m a Source #

Grab a resource and do something with it.

Since: 0.3.0

Instances

Instances details
MonadPool resource m => MonadPool resource (CatchT m) Source #

Since: 0.4.0

Instance details

Defined in Simpoole.Monad.Class

Methods

withResource :: (resource -> CatchT m a) -> CatchT m a Source #

MonadPool resource m => MonadPool resource (IdentityT m) Source #

Since: 0.4.0

Instance details

Defined in Simpoole.Monad.Class

Methods

withResource :: (resource -> IdentityT m a) -> IdentityT m a Source #

(MonadPool resource m, MonadConc m) => MonadPool resource (IsConc m) Source #

Since: 0.4.0

Instance details

Defined in Simpoole.Monad.Class

Methods

withResource :: (resource -> IsConc m a) -> IsConc m a Source #

MonadPool resource m => MonadPool resource (ReaderT r m) Source #

Since: 0.3.0

Instance details

Defined in Simpoole.Monad.Class

Methods

withResource :: (resource -> ReaderT r m a) -> ReaderT r m a Source #

MonadPool resource m => MonadPool resource (WriterT w m) Source #

Since: 0.3.0

Instance details

Defined in Simpoole.Monad.Class

Methods

withResource :: (resource -> WriterT w m a) -> WriterT w m a Source #

MonadPool resource m => MonadPool resource (WriterT w m) Source #

Since: 0.3.0

Instance details

Defined in Simpoole.Monad.Class

Methods

withResource :: (resource -> WriterT w m a) -> WriterT w m a Source #

MonadPool resource m => MonadPool resource (StateT s m) Source #

Since: 0.3.0

Instance details

Defined in Simpoole.Monad.Class

Methods

withResource :: (resource -> StateT s m a) -> StateT s m a Source #

MonadPool resource m => MonadPool resource (StateT s m) Source #

Since: 0.3.0

Instance details

Defined in Simpoole.Monad.Class

Methods

withResource :: (resource -> StateT s m a) -> StateT s m a Source #

MonadMask m => MonadPool resource (PoolT resource m) Source #

Since: 0.3.0

Instance details

Defined in Simpoole.Monad.Internal

Methods

withResource :: (resource -> PoolT resource m a) -> PoolT resource m a Source #

(MonadPool resource f, MonadPool resource g) => MonadPool resource (Product f g) Source #

Since: 0.4.0

Instance details

Defined in Simpoole.Monad.Class

Methods

withResource :: (resource -> Product f g a) -> Product f g a Source #

MonadPool resource m => MonadPool resource (RWST r s w m) Source #

Since: 0.3.0

Instance details

Defined in Simpoole.Monad.Class

Methods

withResource :: (resource -> RWST r s w m a) -> RWST r s w m a Source #

MonadPool resource m => MonadPool resource (RWST r s w m) Source #

Since: 0.3.0

Instance details

Defined in Simpoole.Monad.Class

Methods

withResource :: (resource -> RWST r s w m a) -> RWST r s w m a Source #