Hoogle Search

Within LTS Haskell 22.20 (ghc-9.6.4)

Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.

  1. resourceMask :: MonadResource m => ((forall a . ResourceT IO a -> ResourceT IO a) -> ResourceT IO b) -> m b

    resourcet Control.Monad.Trans.Resource

    Perform asynchronous exception masking. This is more general then Control.Exception.mask, yet more efficient than Control.Exception.Lifted.mask. Since 0.3.0

  2. class MonadIO m => MonadResource m

    resourcet Control.Monad.Trans.Resource

    A Monad which allows for safe resource allocation. In theory, any monad transformer stack which includes a ResourceT can be an instance of MonadResource. Note: runResourceT has a requirement for a MonadUnliftIO m monad, which allows control operations to be lifted. A MonadResource does not have this requirement. This means that transformers such as ContT can be an instance of MonadResource. However, the ContT wrapper will need to be unwrapped before calling runResourceT. Since 0.3.0

  3. type MonadResourceBase = MonadUnliftIO

    resourcet Control.Monad.Trans.Resource

    Deprecated: Use MonadUnliftIO directly instead

  4. joinResourceT :: ResourceT (ResourceT m) a -> ResourceT m a

    resourcet Control.Monad.Trans.Resource

    This function mirrors join at the transformer level: it will collapse two levels of ResourceT into a single ResourceT. Since 0.4.6

  5. liftResourceT :: MonadResource m => ResourceT IO a -> m a

    resourcet Control.Monad.Trans.Resource

    Lift a ResourceT IO action into the current Monad. Since 0.4.0

  6. runResourceT :: MonadUnliftIO m => ResourceT m a -> m a

    resourcet Control.Monad.Trans.Resource

    Unwrap a ResourceT transformer, and call all registered release actions. Note that there is some reference counting involved due to resourceForkIO. If multiple threads are sharing the same collection of resources, only the last call to runResourceT will deallocate the resources. NOTE Since version 1.2.0, this function will throw a ResourceCleanupException if any of the cleanup functions throw an exception.

  7. runResourceTChecked :: MonadUnliftIO m => ResourceT m a -> m a

    resourcet Control.Monad.Trans.Resource

    Backwards compatible alias for runResourceT.

  8. transResourceT :: (m a -> n b) -> ResourceT m a -> ResourceT n b

    resourcet Control.Monad.Trans.Resource

    Transform the monad a ResourceT lives in. This is most often used to strip or add new transformers to a stack, e.g. to run a ReaderT. Note that this function is a slight generalization of hoist. Since 0.3.0

  9. class MonadIO m => MonadResource m

    resourcet Control.Monad.Trans.Resource.Internal

    A Monad which allows for safe resource allocation. In theory, any monad transformer stack which includes a ResourceT can be an instance of MonadResource. Note: runResourceT has a requirement for a MonadUnliftIO m monad, which allows control operations to be lifted. A MonadResource does not have this requirement. This means that transformers such as ContT can be an instance of MonadResource. However, the ContT wrapper will need to be unwrapped before calling runResourceT. Since 0.3.0

  10. liftResourceT :: MonadResource m => ResourceT IO a -> m a

    resourcet Control.Monad.Trans.Resource.Internal

    Lift a ResourceT IO action into the current Monad. Since 0.4.0

Page 2 of many | Previous | Next