@@ -26,7 +26,9 @@ module Data.FastWeakBag
29+import Prelude hiding (traverse)
29−import Control.Monad hiding (forM_, mapM_)
31+import Control.Monad
30import Control.Monad.IO.Class
32import Control.Monad.IO.Class
32#ifdef GHCJS_FAST_WEAK
34#ifdef GHCJS_FAST_WEAK
@@ -34,15 +36,12 @@ import GHCJS.Types
34import Reflex.FastWeak (js_isNull, unsafeFromRawJSVal, unsafeToRawJSVal)
36import Reflex.FastWeak (js_isNull, unsafeFromRawJSVal, unsafeToRawJSVal)
36import Control.Exception
38import Control.Exception
37−import Data.Foldable (forM_, mapM_)
38import Data.IntMap.Strict (IntMap)
39import Data.IntMap.Strict (IntMap)
39import qualified Data.IntMap.Strict as IntMap
40import qualified Data.IntMap.Strict as IntMap
40import Data.IORef
41import Data.IORef
41import System.Mem.Weak
42import System.Mem.Weak
44−import Prelude hiding (mapM_, traverse)
46-- | A @FastWeakBag a@ holds a set of values of type @a@, but does not retain them -
45-- | A @FastWeakBag a@ holds a set of values of type @a@, but does not retain them -
47-- that is, they can still be garbage-collected. As long as the @a@s remain
46-- that is, they can still be garbage-collected. As long as the @a@s remain
48-- alive, the 'FastWeakBag' will continue to refer to them.
47-- alive, the 'FastWeakBag' will continue to refer to them.