Safe Haskell | Safe |
---|---|
Language | Haskell2010 |
Unlifted Control.Monad.Trans.Resource
Since: 0.1.0.0
- data ResourceT m a :: (* -> *) -> * -> *
- runResourceT :: MonadUnliftIO m => ResourceT m a -> m a
- liftResourceT :: MonadIO m => ResourceT IO a -> ResourceT m a
Documentation
data ResourceT m a :: (* -> *) -> * -> * #
The Resource transformer. This transformer keeps track of all registered
actions, and calls them upon exit (via runResourceT
). Actions may be
registered via register
, or resources may be allocated atomically via
allocate
. allocate
corresponds closely to bracket
.
Releasing may be performed before exit via the release
function. This is a
highly recommended optimization, as it will ensure that scarce resources are
freed early. Note that calling release
will deregister the action, so that
a release action will only ever be called once.
Since 0.3.0
runResourceT :: MonadUnliftIO m => ResourceT m a -> m a Source #
Since: 0.1.0.0