{-# 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 ())'