packages feed

primitive-extras 0.1.1 → 0.1.2

raw patch · 2 files changed

+22/−1 lines, 2 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

+ PrimitiveExtras.UnfoldM: primArray :: (Monad m, Prim prim) => PrimArray prim -> UnfoldM m prim
+ PrimitiveExtras.UnfoldM: primMultiArrayAt :: (Monad m, Prim prim) => PrimMultiArray prim -> Int -> UnfoldM m prim
+ PrimitiveExtras.UnfoldM: primMultiArrayIndices :: Monad m => PrimMultiArray a -> UnfoldM m Int

Files

+ library/PrimitiveExtras/UnfoldM.hs view
@@ -0,0 +1,20 @@+module PrimitiveExtras.UnfoldM+where++import PrimitiveExtras.Prelude hiding (fold)+import PrimitiveExtras.Types+import DeferredFolds.UnfoldM+import qualified PrimitiveExtras.Fold as A+import qualified PrimitiveExtras.UnliftedArray as B+++primMultiArrayIndices :: Monad m => PrimMultiArray a -> UnfoldM m Int+primMultiArrayIndices (PrimMultiArray ua) =+  intsInRange 0 (pred (sizeofUnliftedArray ua))++primMultiArrayAt :: (Monad m, Prim prim) => PrimMultiArray prim -> Int -> UnfoldM m prim+primMultiArrayAt (PrimMultiArray ua) index =+  B.at ua index empty primArray++primArray :: (Monad m, Prim prim) => PrimArray prim -> UnfoldM m prim+primArray ba = UnfoldM $ \f z -> foldlPrimArrayM' f z ba
primitive-extras.cabal view
@@ -1,7 +1,7 @@ name:   primitive-extras version:-  0.1.1+  0.1.2 category:   Primitive synopsis:@@ -43,6 +43,7 @@     PrimitiveExtras.Monad     PrimitiveExtras.IO     PrimitiveExtras.Unfold+    PrimitiveExtras.UnfoldM     PrimitiveExtras.Fold     PrimitiveExtras.Pure   other-modules: