From 0f62efc8579915b21836e7b905416828ef135205 Mon Sep 17 00:00:00 2001
From: Jens Nolte <git@queezle.net>
Date: Tue, 2 Nov 2021 02:12:37 +0100
Subject: [PATCH] Rename withScopedResourceManager

Co-authored-by: Jan Beinke <git@janbeinke.com>
---
 src/Quasar/ResourceManager.hs | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/src/Quasar/ResourceManager.hs b/src/Quasar/ResourceManager.hs
index 7bedb84..6f22bb7 100644
--- a/src/Quasar/ResourceManager.hs
+++ b/src/Quasar/ResourceManager.hs
@@ -8,6 +8,8 @@ module Quasar.ResourceManager (
   registerNewResource_,
   registerDisposable,
   registerDisposeAction,
+  withScopedResourceManager,
+  withScopedResourceManagerIO,
   withSubResourceManagerM,
   onResourceManager,
   captureDisposable,
@@ -140,11 +142,17 @@ registerNewResource action = mask_ do
 registerNewResource_ :: (IsDisposable a, MonadResourceManager m) => m a -> m ()
 registerNewResource_ action = void $ registerNewResource action
 
+withScopedResourceManager :: MonadResourceManager m => m a -> m a
+withScopedResourceManager action =
+  bracket newResourceManager dispose \scope -> localResourceManager scope action
+
+withScopedResourceManagerIO :: MonadResourceManager m => ResourceManagerIO a -> m a
+withScopedResourceManagerIO action =
+  bracket newResourceManager dispose \scope -> onResourceManager scope action
 
--- TODO rename to withResourceScope, subResourceManager or withResourceManager?
 withSubResourceManagerM :: MonadResourceManager m => m a -> m a
-withSubResourceManagerM action =
-  bracket newResourceManager dispose \scope -> localResourceManager scope action
+withSubResourceManagerM = withScopedResourceManager
+{-# DEPRECATED withSubResourceManagerM "Use `withScopedResourceManager` instead." #-}
 
 
 type ResourceManagerT = ReaderT ResourceManager
-- 
GitLab