8888import Control.Monad.Catch (MonadCatch )
8989import Control.Monad.IO.Class (MonadIO (.. ))
9090import Data.Word (Word8 )
91- import Foreign.Storable (Storable (.. ))
9291import System.IO (Handle , openFile , IOMode (.. ), hClose )
9392import Prelude hiding (read )
9493
@@ -198,14 +197,14 @@ usingFile3 = UF.bracket before after
198197--
199198-- @since 0.7.0
200199{-# INLINABLE putChunk #-}
201- putChunk :: Storable a => FilePath -> Array a -> IO ()
200+ putChunk :: FilePath -> Array a -> IO ()
202201putChunk file arr = SIO. withFile file WriteMode (`FH.putChunk` arr)
203202
204203-- | append an array to a file.
205204--
206205-- @since 0.7.0
207206{-# INLINABLE appendArray #-}
208- appendArray :: Storable a => FilePath -> Array a -> IO ()
207+ appendArray :: FilePath -> Array a -> IO ()
209208appendArray file arr = SIO. withFile file AppendMode (`FH.putChunk` arr)
210209
211210-------------------------------------------------------------------------------
@@ -322,7 +321,7 @@ readShared = undefined
322321-------------------------------------------------------------------------------
323322
324323{-# INLINE fromChunksMode #-}
325- fromChunksMode :: (MonadAsync m , MonadCatch m , Storable a )
324+ fromChunksMode :: (MonadAsync m , MonadCatch m )
326325 => IOMode -> FilePath -> SerialT m (Array a ) -> m ()
327326fromChunksMode mode file xs = S. drain $
328327 withFile file mode (\ h -> S. mapM (FH. putChunk h) xs)
@@ -331,7 +330,7 @@ fromChunksMode mode file xs = S.drain $
331330--
332331-- @since 0.7.0
333332{-# INLINE fromChunks #-}
334- fromChunks :: (MonadAsync m , MonadCatch m , Storable a )
333+ fromChunks :: (MonadAsync m , MonadCatch m )
335334 => FilePath -> SerialT m (Array a ) -> m ()
336335fromChunks = fromChunksMode WriteMode
337336
@@ -376,7 +375,7 @@ write = toHandleWith A.defaultChunkSize
376375--
377376-- /Pre-release/
378377{-# INLINE writeChunks #-}
379- writeChunks :: (MonadIO m , MonadCatch m , Storable a )
378+ writeChunks :: (MonadIO m , MonadCatch m )
380379 => FilePath -> Fold m (Array a ) ()
381380writeChunks path = Fold step initial extract
382381 where
@@ -422,7 +421,7 @@ write = writeWithBufferOf defaultChunkSize
422421--
423422-- @since 0.7.0
424423{-# INLINE appendChunks #-}
425- appendChunks :: (MonadAsync m , MonadCatch m , Storable a )
424+ appendChunks :: (MonadAsync m , MonadCatch m )
426425 => FilePath -> SerialT m (Array a ) -> m ()
427426appendChunks = fromChunksMode AppendMode
428427
0 commit comments