random-mhs 1.3.1.1 → 1.3.2
raw patch · 2 files changed
+10/−13 lines, 2 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- random-mhs.cabal +1/−1
- src/System/Random/Array.hs +9/−12
random-mhs.cabal view
@@ -1,6 +1,6 @@ cabal-version: >=1.10 name: random-mhs-version: 1.3.1.1+version: 1.3.2 license: BSD3 license-file: LICENSE maintainer: lennart@augustsson.net
src/System/Random/Array.hs view
@@ -238,15 +238,14 @@ {-# INLINE writeArray #-} #else /* !defined(__MHS__) */+import qualified Data.Array as A import Data.Array.Byte import Data.Bits import Data.ByteString(ByteString) import Data.ByteString.Short.Internal+import qualified Data.STArray as SA import Data.Word-import qualified Mhs.Arr as A-import qualified Mhs.MutArr as SA import GHC.Exts(unsafeIOToST)-import System.IO.Unsafe(unsafePerformIO) wordSizeInBits :: Int wordSizeInBits = _wordSize@@ -281,25 +280,23 @@ -------- -type Array a = A.Arr a-type MutableArray s a = SA.MutSTArr s a+type Array a = A.Array Int a+type MutableArray s a = SA.STArray s a newMutableArray :: Int -> a -> ST s (MutableArray s a)-newMutableArray = SA.newMutSTArr+newMutableArray = SA.newSTArray freezeMutableArray :: MutableArray s a -> ST s (Array a)-freezeMutableArray a = A.copyArr <$> A.unsafeFreezeMutSTArr a+freezeMutableArray = SA.freezeSTArray sizeOfMutableArray :: MutableArray s a -> Int-sizeOfMutableArray (SA.MutSTArr a) = unsafePerformIO (SA.sizeMutIOArr a)+sizeOfMutableArray = SA.sizeSTArray readArray :: MutableArray s a -> Int -> ST s a-readArray a i | i < 0 || i >= sizeOfMutableArray a = error "readArray"- | otherwise = SA.unsafeReadMutSTArr a i+readArray = SA.readSTArray writeArray :: MutableArray s a -> Int -> a -> ST s ()-writeArray a i x | i < 0 || i >= sizeOfMutableArray a = error "writeArray"- | otherwise = SA.unsafeWriteMutSTArr a i x+writeArray = SA.writeSTArray #endif /* !defined(__MHS__) */