packages feed

primitive-extras 0.3 → 0.3.0.1

raw patch · 3 files changed

+6/−6 lines, 3 files

Files

library/PrimitiveExtras/IO.hs view
@@ -90,15 +90,15 @@ -------------------------  newTVarArray :: a -> Int -> IO (TVarArray a)-newTVarArray a size = TVarArray <$> replicateArray size (newTVarIO a)+newTVarArray a size = TVarArray <$> replicateUnliftedArray size (newTVarIO a)  freezeTVarArrayAsPrimArray :: Prim a => TVarArray a -> IO (PrimArray a) freezeTVarArrayAsPrimArray (TVarArray varArray) =   do-    let size = sizeofArray varArray+    let size = sizeofUnliftedArray varArray     mpa <- newPrimArray size     forMFromZero_ size $ \ index -> do-      var <- indexArrayM varArray index+      var <- indexUnliftedArrayM varArray index       value <- atomically (readTVar var)       writePrimArray mpa index value     unsafeFreezePrimArray mpa@@ -106,5 +106,5 @@ modifyTVarArrayAt :: TVarArray a -> Int -> (a -> a) -> IO () modifyTVarArrayAt (TVarArray array) index fn =   do-    var <- indexArrayM array index+    var <- indexUnliftedArrayM array index     atomically $ modifyTVar' var fn
library/PrimitiveExtras/Types.hs view
@@ -6,4 +6,4 @@  newtype PrimMultiArray a = PrimMultiArray (UnliftedArray (PrimArray a)) -newtype TVarArray a = TVarArray (Array (TVar a))+newtype TVarArray a = TVarArray (UnliftedArray (TVar a))
primitive-extras.cabal view
@@ -1,7 +1,7 @@ name:   primitive-extras version:-  0.3+  0.3.0.1 category:   Primitive synopsis: