From fd781fd68f2488c71b6ac2338f9421bd7cd16bff Mon Sep 17 00:00:00 2001
From: Jens Nolte <git@queezle.net>
Date: Sun, 21 Nov 2021 01:59:18 +0100
Subject: [PATCH] Add registerAsyncDisposeAction

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

diff --git a/src/Quasar/ResourceManager.hs b/src/Quasar/ResourceManager.hs
index 742216c..aefeb80 100644
--- a/src/Quasar/ResourceManager.hs
+++ b/src/Quasar/ResourceManager.hs
@@ -8,6 +8,7 @@ module Quasar.ResourceManager (
   registerNewResource_,
   registerDisposable,
   registerDisposeAction,
+  registerAsyncDisposeAction,
   withScopedResourceManager,
   onResourceManager,
   captureDisposable,
@@ -133,6 +134,9 @@ registerDisposable disposable = do
 registerDisposeAction :: MonadResourceManager m => IO () -> m ()
 registerDisposeAction disposeAction = mask_ $ registerDisposable =<< newDisposable disposeAction
 
+registerAsyncDisposeAction :: MonadResourceManager m => IO () -> m ()
+registerAsyncDisposeAction disposeAction = mask_ $ registerDisposable =<< newAsyncDisposable disposeAction
+
 -- | Locks the resource manager (which may fail), runs the computation and registeres the resulting disposable.
 --
 -- The computation will be run in masked state.
-- 
GitLab