@@ -133,7 +133,7 @@ import GHC.Ptr (Ptr(..))
134import Streamly.Internal.Data.Array.Foreign.Mut.Type (ReadUState(..), touch)
134import Streamly.Internal.Data.Array.Foreign.Mut.Type (ReadUState(..), touch)
135import Streamly.Internal.Data.Array.Foreign.Type
135import Streamly.Internal.Data.Array.Foreign.Type
136− (Array(..), length, unsafeWithArray)
136+ (Array(..), length, asPtrUnsafe)
137import Streamly.Internal.Data.Fold.Type (Fold(..))
137import Streamly.Internal.Data.Fold.Type (Fold(..))
138import Streamly.Internal.Data.Producer.Type (Producer(..))
138import Streamly.Internal.Data.Producer.Type (Producer(..))
139import Streamly.Internal.Data.Stream.Serial (SerialT(..))
139import Streamly.Internal.Data.Stream.Serial (SerialT(..))
@@ -270,7 +270,7 @@ null arr = A.byteLength arr == 0
270getIndexRev :: forall a. Storable a => Int -> Array a -> Maybe a
270getIndexRev :: forall a. Storable a => Int -> Array a -> Maybe a
271getIndexRev i arr =
271getIndexRev i arr =
272 unsafeInlineIO
272 unsafeInlineIO
273− $ unsafeWithArray arr
273+ $ asPtrUnsafe arr
274 $ \ptr -> do
274 $ \ptr -> do
275 let elemPtr = PTR_RINDEX(aEnd arr,i,a)
275 let elemPtr = PTR_RINDEX(aEnd arr,i,a)
276 if i >= 0 && elemPtr >= ptr
276 if i >= 0 && elemPtr >= ptr
@@ -437,7 +437,7 @@ getSlicesFromLen from len =
437getIndex :: forall a. Storable a => Array a -> Int -> Maybe a
437getIndex :: forall a. Storable a => Array a -> Int -> Maybe a
438getIndex arr i =
438getIndex arr i =
439 unsafeInlineIO
439 unsafeInlineIO
440− $ unsafeWithArray arr
440+ $ asPtrUnsafe arr
441 $ \ptr -> do
441 $ \ptr -> do
442 let elemPtr = PTR_INDEX(ptr,i,a)
442 let elemPtr = PTR_INDEX(ptr,i,a)
443 if i >= 0 && PTR_VALID(elemPtr,aEnd arr,a)
443 if i >= 0 && PTR_VALID(elemPtr,aEnd arr,a)
@@ -563,7 +563,7 @@ cast arr =
564unsafeAsPtr :: Array a -> (Ptr b -> IO c) -> IO c
564unsafeAsPtr :: Array a -> (Ptr b -> IO c) -> IO c
565unsafeAsPtr arr act = do
565unsafeAsPtr arr act = do
566− unsafeWithArray arr $ \ptr -> act (castPtr ptr)
566+ asPtrUnsafe arr $ \ptr -> act (castPtr ptr)
568-- | Convert an array of any type into a null terminated CString Ptr.
568-- | Convert an array of any type into a null terminated CString Ptr.
@@ -576,7 +576,7 @@ unsafeAsPtr arr act = do
576unsafeAsCString :: Array a -> (CString -> IO b) -> IO b
576unsafeAsCString :: Array a -> (CString -> IO b) -> IO b
577unsafeAsCString arr act = do
577unsafeAsCString arr act = do
578 let arr1 = asBytes arr <> A.fromList [0]
578 let arr1 = asBytes arr <> A.fromList [0]
579− unsafeWithArray arr1 $ \ptr -> act (castPtr ptr)
579+ asPtrUnsafe arr1 $ \ptr -> act (castPtr ptr)
581-------------------------------------------------------------------------------
581-------------------------------------------------------------------------------