contiguous 0.4 → 0.4.0.1
raw patch · 2 files changed
+14/−15 lines, 2 filesdep +primitive-unlifteddep ~basedep ~primitivePVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependencies added: primitive-unlifted
Dependency ranges changed: base, primitive
API changes (from Hackage documentation)
- Data.Primitive.Contiguous: instance Data.Primitive.Contiguous.Contiguous Data.Primitive.UnliftedArray.UnliftedArray
+ Data.Primitive.Contiguous: instance Data.Primitive.Contiguous.Contiguous Data.Primitive.Unlifted.Array.UnliftedArray
Files
- contiguous.cabal +4/−3
- src/Data/Primitive/Contiguous.hs +10/−12
contiguous.cabal view
@@ -1,6 +1,6 @@ cabal-version: 2.0 name: contiguous-version: 0.4+version: 0.4.0.1 homepage: https://github.com/andrewthad/contiguous bug-reports: https://github.com/andrewthad/contiguous/issues author: Andrew Martin@@ -26,8 +26,9 @@ Data.Primitive.Contiguous hs-source-dirs: src build-depends:- base >=4.9 && <5- , primitive >= 0.6.4+ base >=4.11.1.0 && <5+ , primitive >= 0.7 && < 0.8+ , primitive-unlifted >= 0.1 && < 0.2 , deepseq >= 1.4 default-language: Haskell2010 ghc-options: -O2 -Wall
src/Data/Primitive/Contiguous.hs view
@@ -146,6 +146,8 @@ import Data.Bits (xor) import Data.Kind (Type) import Data.Primitive hiding (fromList,fromListN)+import Data.Primitive.Unlifted.Array+import Data.Primitive.Unlifted.Class (PrimUnlifted) import Data.Semigroup (Semigroup,(<>)) import Data.Word (Word8) import GHC.Base (build)@@ -307,8 +309,8 @@ in go 0 clone = cloneSmallArray cloneMutable = cloneSmallMutableArray- lift = fromArrayArray#- unlift = toArrayArray#+ lift x = SmallArray (unsafeCoerce# x)+ unlift (SmallArray x) = unsafeCoerce# x copy = copySmallArray copyMutable = copySmallMutableArray replicateMutable = replicateSmallMutableArray@@ -363,8 +365,8 @@ clone = clonePrimArray cloneMutable = cloneMutablePrimArray equals = (==)- unlift = toArrayArray#- lift = fromArrayArray#+ unlift (PrimArray x) = unsafeCoerce# x+ lift x = PrimArray (unsafeCoerce# x) null (PrimArray a) = case sizeofByteArray# a of 0# -> True _ -> False@@ -435,8 +437,8 @@ clone = cloneArray cloneMutable = cloneMutableArray equals = (==)- unlift = toArrayArray#- lift = fromArrayArray#+ unlift (Array x) = unsafeCoerce# x+ lift x = Array (unsafeCoerce# x) null (Array a) = case sizeofArray# a of 0# -> True _ -> False@@ -509,8 +511,8 @@ clone = cloneUnliftedArray cloneMutable = cloneMutableUnliftedArray equals = (==)- unlift = toArrayArray#- lift = fromArrayArray#+ unlift (UnliftedArray x) = x+ lift x = UnliftedArray x null (UnliftedArray a) = case sizeofArrayArray# a of 0# -> True _ -> False@@ -592,10 +594,6 @@ copyMutableUnliftedArray dst 0 src 0 (min sz (sizeofMutableUnliftedArray src)) pure dst {-# inline resizeUnliftedArray #-}--emptyUnliftedArray :: UnliftedArray a-emptyUnliftedArray = runST (unsafeNewUnliftedArray 0 >>= unsafeFreezeUnliftedArray)-{-# noinline emptyUnliftedArray #-} -- | Append two arrays. append :: (Contiguous arr, Element arr a) => arr a -> arr a -> arr a