chaselev-deque-0.1.2: Data/Concurrent/Deque/ChaseLev/DequeInstance.hs
{-# LANGUAGE TypeFamilies #-}
module Data.Concurrent.Deque.ChaseLev.DequeInstance () where
import Data.Array.IO
import Data.Concurrent.Deque.Class
import qualified Data.Concurrent.Deque.ChaseLev as R
-- import qualified Data.Concurrent.Deque.ReactorDeque as R
-- | Populate a slice of the configuration-space for `Deque`:
--
-- Work stealing queues are only threadsafe on one end (pop-only) and
-- double (push/pop) functionality on the other:
-- type instance Deque NT T D S Grow Safe elt = R.ChaseLevDeque elt -- Minimal slice
type instance Deque NT t dbl S grow safe elt = R.ChaseLevDeque elt -- Maximal slice
-- [2011.11.09] Presently having problems with this error when I try
-- to use these Deques:
--
-- Couldn't match type `Deque
-- Nonthreadsafe Threadsafe DoubleEnd SingleEnd Grow Safe (Par ())'
-- with `R.Deque IOArray (Par ())'