primdata 0.1.2.4 → 0.1.2.5
raw patch · 5 files changed
+38/−2 lines, 5 filesPVP: minor bump suggested
API additions: PVP suggests at least a minor version bump
API changes (from Hackage documentation)
+ Data.Array.FI: forIx :: Flat a => Array a -> (Int -> a -> IO ()) -> IO ()
+ Data.Array.FI: null :: Array a -> Bool
+ Data.Array.LI: forIx :: Array a -> (Int -> a -> IO ()) -> IO ()
+ Data.Array.SI: forIx :: Array a -> (Int -> a -> IO ()) -> IO ()
+ Data.Array.UI: forIx :: Unlifted a => Array a -> (Int -> a -> IO ()) -> IO ()
+ Data.Array.UI: null :: Array a -> Bool
Files
- Data/Array/FI.hs +11/−0
- Data/Array/LI.hs +7/−0
- Data/Array/SI.hs +7/−0
- Data/Array/UI.hs +11/−0
- primdata.cabal +2/−2
Data/Array/FI.hs view
@@ -174,3 +174,14 @@ s -> go xs (i +# 1#) s go _ _ s = case unsafeFreezeByteArray# marr s of (# _, arr #) -> arr) {-# inline fromList #-}++{-# inline forIx #-}+forIx :: forall a. Flat a => Array a -> (Int -> a -> IO ()) -> IO ()+forIx arr f = go arr 0 (Data.Array.FI.size arr) where+ go :: Array a -> Int -> Int -> IO ()+ go arr i len | i == len = pure ()+ go arr i len = f i (arr ! i) >> go arr (i + 1) len++{-# inline null #-}+null :: Array a -> Bool+null (Array arr) = isTrue# (sizeofByteArray# arr ==# 0#)
Data/Array/LI.hs view
@@ -239,3 +239,10 @@ go _ _ s = case unsafeFreezeArray# marr s of (# _, arr #) -> arr) {-# inline fromList #-}++{-# inline forIx #-}+forIx :: forall a. Array a -> (Int -> a -> IO ()) -> IO ()+forIx arr f = go arr 0 (Data.Array.LI.size arr) where+ go :: Array a -> Int -> Int -> IO ()+ go arr i len | i == len = pure ()+ go arr i len = f i (arr ! i) >> go arr (i + 1) len
Data/Array/SI.hs view
@@ -239,3 +239,10 @@ go _ _ s = case unsafeFreezeSmallArray# marr s of (# _, arr #) -> arr) {-# inline fromList #-}++{-# inline forIx #-}+forIx :: forall a. Array a -> (Int -> a -> IO ()) -> IO ()+forIx arr f = go arr 0 (Data.Array.SI.size arr) where+ go :: Array a -> Int -> Int -> IO ()+ go arr i len | i == len = pure ()+ go arr i len = f i (arr ! i) >> go arr (i + 1) len
Data/Array/UI.hs view
@@ -91,3 +91,14 @@ go _ _ s = case unsafeFreezeArrayArray# marr s of (# _, arr #) -> arr) {-# inline fromList #-}++{-# inline forIx #-}+forIx :: forall a. Unlifted a => Array a -> (Int -> a -> IO ()) -> IO ()+forIx arr f = go arr 0 (Data.Array.UI.size arr) where+ go :: Array a -> Int -> Int -> IO ()+ go arr i len | i == len = pure ()+ go arr i len = f i (arr ! i) >> go arr (i + 1) len++{-# inline null #-}+null :: Array a -> Bool+null (Array arr) = isTrue# (sizeofArrayArray# arr ==# 0#)
primdata.cabal view
@@ -1,11 +1,11 @@ cabal-version: 1.12 --- This file has been generated from package.yaml by hpack version 0.39.1.+-- This file has been generated from package.yaml by hpack version 0.39.6. -- -- see: https://github.com/sol/hpack name: primdata-version: 0.1.2.4+version: 0.1.2.5 synopsis: Minimum-overhead primitive datatypes category: primitive author: András Kovács