-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | Orphan instances for the RIO type in the rio package
--   
--   See README and Haddocks at
--   <a>https://www.stackage.org/package/rio-orphans</a>
@package rio-orphans
@version 0.1.2.0


-- | Orphan instances for the <a>RIO</a> data type.
module RIO.Orphans

-- | An environment with a <a>ResourceMap</a>
class HasResourceMap env
resourceMapL :: HasResourceMap env => Lens' env ResourceMap

-- | A collection of all of the registered resource cleanup actions.
type ResourceMap = IORef ReleaseMap

-- | Perform an action with a <a>ResourceMap</a>
withResourceMap :: MonadUnliftIO m => (ResourceMap -> m a) -> m a
instance Control.Monad.Catch.MonadCatch (RIO.Prelude.RIO.RIO env)
instance Control.Monad.Catch.MonadMask (RIO.Prelude.RIO.RIO env)
instance Control.Monad.Base.MonadBase GHC.Types.IO (RIO.Prelude.RIO.RIO env)
instance RIO.Orphans.HasResourceMap (GHC.IORef.IORef Control.Monad.Trans.Resource.Internal.ReleaseMap)
instance RIO.Orphans.HasResourceMap env => Control.Monad.Trans.Resource.Internal.MonadResource (RIO.Prelude.RIO.RIO env)
instance Control.Monad.Trans.Control.MonadBaseControl GHC.Types.IO (RIO.Prelude.RIO.RIO env)
instance RIO.Prelude.Display.Display System.Log.FastLogger.LogStr.LogStr
instance RIO.Prelude.Logger.HasLogFunc env => Control.Monad.Logger.MonadLogger (RIO.Prelude.RIO.RIO env)
instance RIO.Prelude.Logger.HasLogFunc env => Control.Monad.Logger.MonadLoggerIO (RIO.Prelude.RIO.RIO env)
