hw-prim 0.6.2.34 → 0.6.2.35
raw patch · 2 files changed
+10/−2 lines, 2 filesPVP: minor bump suggested
API additions: PVP suggests at least a minor version bump
API changes (from Hackage documentation)
+ HaskellWorks.Foreign: mallocForeignPtrBytesWithAlignedCastPtr :: Storable a => Int -> Int -> IO (ForeignPtr a, Ptr b)
Files
- hw-prim.cabal +2/−2
- src/HaskellWorks/Foreign.hs +8/−0
hw-prim.cabal view
@@ -1,7 +1,7 @@ cabal-version: 2.2 name: hw-prim-version: 0.6.2.34+version: 0.6.2.35 synopsis: Primitive functions and data types description: Primitive functions and data types. category: Data@@ -13,7 +13,7 @@ copyright: 2016-2019 John Ky license: BSD-3-Clause license-file: LICENSE-tested-with: GHC == 8.6.5, GHC == 8.4.4, GHC == 8.2.2+tested-with: GHC == 8.8.1, GHC == 8.6.5, GHC == 8.4.4, GHC == 8.2.2 build-type: Simple extra-source-files: README.md
src/HaskellWorks/Foreign.hs view
@@ -1,5 +1,6 @@ module HaskellWorks.Foreign ( mallocForeignPtrBytesWithAlignedPtr+ , mallocForeignPtrBytesWithAlignedCastPtr ) where import Foreign.ForeignPtr (ForeignPtr)@@ -8,9 +9,16 @@ import qualified Foreign.ForeignPtr as F import qualified Foreign.ForeignPtr.Unsafe as F+import qualified Foreign.Ptr as F mallocForeignPtrBytesWithAlignedPtr :: Storable a => Int -> Int -> IO (ForeignPtr a, Ptr a) mallocForeignPtrBytesWithAlignedPtr alignment n = do fptr <- F.mallocForeignPtrBytes (n + alignment) let alignedPtr = alignPtr (F.unsafeForeignPtrToPtr fptr) alignment return (fptr, alignedPtr)++mallocForeignPtrBytesWithAlignedCastPtr :: Storable a => Int -> Int -> IO (ForeignPtr a, Ptr b)+mallocForeignPtrBytesWithAlignedCastPtr alignment n = do+ fptr <- F.mallocForeignPtrBytes (n + alignment)+ let alignedPtr = alignPtr (F.unsafeForeignPtrToPtr fptr) alignment+ return (fptr, F.castPtr alignedPtr)