packages feed

mutable-iter 0.3 → 0.4

raw patch · 2 files changed

+7/−7 lines, 2 filesdep ~iterateedep ~vectorPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: iteratee, vector

API changes (from Hackage documentation)

- Data.MutableIter: instance (MonadCatchIO m, Storable el) => Monad (MIteratee (IOBuffer r el) m)
- Data.MutableIter: instance (MonadCatchIO m, Storable el) => MonadIO (MIteratee (IOBuffer r el) m)
- Data.MutableIter: instance (Storable el) => MonadTrans (MIteratee (IOBuffer s el))
- Data.MutableIter.IOBuffer: instance (Storable el) => NullPoint (IOBuffer r el)
+ Data.MutableIter: instance (MonadIO m, Storable el) => Monad (MIteratee (IOBuffer r el) m)
+ Data.MutableIter: instance (MonadIO m, Storable el) => MonadIO (MIteratee (IOBuffer r el) m)
+ Data.MutableIter: instance Storable el => MonadTrans (MIteratee (IOBuffer s el))
+ Data.MutableIter.IOBuffer: instance Storable el => NullPoint (IOBuffer r el)
- Data.MutableIter: createIOBuffer :: (Storable el) => Int -> ForeignPtr Int -> ForeignPtr el -> IOBuffer r el
+ Data.MutableIter: createIOBuffer :: Storable el => Int -> ForeignPtr Int -> ForeignPtr el -> IOBuffer r el
- Data.MutableIter: idone :: (Monad m) => a -> Stream s -> MIteratee s m a
+ Data.MutableIter: idone :: Monad m => a -> Stream s -> MIteratee s m a
- Data.MutableIter: joinIM :: (Monad m) => m (MIteratee (IOBuffer r el) m a) -> MIteratee (IOBuffer r el) m a
+ Data.MutableIter: joinIM :: Monad m => m (MIteratee (IOBuffer r el) m a) -> MIteratee (IOBuffer r el) m a
- Data.MutableIter: liftI :: (Monad m) => (Stream s -> MIteratee s m a) -> MIteratee s m a
+ Data.MutableIter: liftI :: Monad m => (Stream s -> MIteratee s m a) -> MIteratee s m a
- Data.MutableIter: newFp :: (Storable a) => a -> IO (ForeignPtr a)
+ Data.MutableIter: newFp :: Storable a => a -> IO (ForeignPtr a)
- Data.MutableIter: wrapEnum :: (Monad m) => Enumerator s m a -> MEnumerator s m a
+ Data.MutableIter: wrapEnum :: Monad m => Enumerator s m a -> MEnumerator s m a
- Data.MutableIter.Binary: endianRead2 :: (MonadCatchIO m) => Endian -> MIteratee (IOBuffer r Word8) m Word16
+ Data.MutableIter.Binary: endianRead2 :: MonadCatchIO m => Endian -> MIteratee (IOBuffer r Word8) m Word16
- Data.MutableIter.Binary: endianRead3 :: (MonadCatchIO m) => Endian -> MIteratee (IOBuffer r Word8) m Word32
+ Data.MutableIter.Binary: endianRead3 :: MonadCatchIO m => Endian -> MIteratee (IOBuffer r Word8) m Word32
- Data.MutableIter.Binary: endianRead4 :: (MonadCatchIO m) => Endian -> MIteratee (IOBuffer r Word8) m Word32
+ Data.MutableIter.Binary: endianRead4 :: MonadCatchIO m => Endian -> MIteratee (IOBuffer r Word8) m Word32
- Data.MutableIter.IOBuffer: append :: (Storable el) => IOBuffer r el -> IOBuffer r el -> IO (IOBuffer r el)
+ Data.MutableIter.IOBuffer: append :: Storable el => IOBuffer r el -> IOBuffer r el -> IO (IOBuffer r el)
- Data.MutableIter.IOBuffer: copyBuffer :: (Storable el) => IOBuffer r el -> IO (IOBuffer r el)
+ Data.MutableIter.IOBuffer: copyBuffer :: Storable el => IOBuffer r el -> IO (IOBuffer r el)
- Data.MutableIter.IOBuffer: createIOBuffer :: (Storable el) => Int -> ForeignPtr Int -> ForeignPtr el -> IOBuffer r el
+ Data.MutableIter.IOBuffer: createIOBuffer :: Storable el => Int -> ForeignPtr Int -> ForeignPtr el -> IOBuffer r el
- Data.MutableIter.IOBuffer: dropWhile :: (Storable el) => (el -> Bool) -> IOBuffer r el -> IO ()
+ Data.MutableIter.IOBuffer: dropWhile :: Storable el => (el -> Bool) -> IOBuffer r el -> IO ()
- Data.MutableIter.IOBuffer: empty :: (Storable el) => IOBuffer r el
+ Data.MutableIter.IOBuffer: empty :: Storable el => IOBuffer r el
- Data.MutableIter.IOBuffer: foldl' :: (Storable b) => (a -> b -> a) -> a -> IOBuffer r b -> IO a
+ Data.MutableIter.IOBuffer: foldl' :: Storable b => (a -> b -> a) -> a -> IOBuffer r b -> IO a
- Data.MutableIter.IOBuffer: freeze :: (Storable el) => IOBuffer r el -> IO (Vector el)
+ Data.MutableIter.IOBuffer: freeze :: Storable el => IOBuffer r el -> IO (Vector el)
- Data.MutableIter.IOBuffer: hPut :: (Storable el) => Handle -> IOBuffer r el -> IO ()
+ Data.MutableIter.IOBuffer: hPut :: Storable el => Handle -> IOBuffer r el -> IO ()
- Data.MutableIter.IOBuffer: lookAtHead :: (Storable el) => IOBuffer r el -> IO (Maybe el)
+ Data.MutableIter.IOBuffer: lookAtHead :: Storable el => IOBuffer r el -> IO (Maybe el)
- Data.MutableIter.IOBuffer: pop :: (Storable el) => IOBuffer r el -> IO el
+ Data.MutableIter.IOBuffer: pop :: Storable el => IOBuffer r el -> IO el
- Data.MutableIter.IOBuffer: splitAt :: (Storable el) => IOBuffer r el -> Int -> IO (IOBuffer r el, IOBuffer r el)
+ Data.MutableIter.IOBuffer: splitAt :: Storable el => IOBuffer r el -> Int -> IO (IOBuffer r el, IOBuffer r el)
- Data.MutableIter.IOBuffer: take :: (Storable el) => IOBuffer r el -> Int -> IO (IOBuffer r el)
+ Data.MutableIter.IOBuffer: take :: Storable el => IOBuffer r el -> Int -> IO (IOBuffer r el)

Files

mutable-iter.cabal view
@@ -1,5 +1,5 @@ Name:                mutable-iter-Version:             0.3+Version:             0.4 Synopsis:            iteratees based upon mutable buffers Description:         Provides iteratees backed by mutable buffers.  This enables iteratees to run without any extra memory allocations. Homepage:            http://tanimoto.us/~jwlato/haskell/mutable-iter@@ -9,7 +9,7 @@ Maintainer:          jwlato@gmail.com Copyright:           John W. Lato, 2010 Stability:           Experimental-Tested-with:         GHC == 6.12.1+Tested-with:         GHC == 6.12.3 Category:            Data Build-type:          Simple @@ -28,7 +28,7 @@                       ,Data.MutableIter.IOBuffer   Build-depends:     base                      >= 4         && < 6,-    iteratee                  >= 0.5       && < 0.6,+    iteratee                  >= 0.5       && < 0.7,     MonadCatchIO-transformers >= 0.2       && < 0.3,     transformers              >= 0.2       && < 0.3,-    vector                    >= 0.4       && < 0.8+    vector                    >= 0.4       && < 0.9
src/Data/MutableIter.hs view
@@ -54,13 +54,13 @@  import System.IO -isNullChunk :: (MonadCatchIO s) => I.Stream (IOBuffer r el) -> s Bool+isNullChunk :: (MonadIO s) => I.Stream (IOBuffer r el) -> s Bool isNullChunk (I.EOF _) = return False isNullChunk (I.Chunk s) = liftIO $ null s  newtype MIteratee s m a = MIteratee {unwrap :: I.Iteratee s m a} deriving (Functor) -instance (MonadCatchIO m, Storable el) => Monad (MIteratee (IOBuffer r el) m) where+instance (MonadIO m, Storable el) => Monad (MIteratee (IOBuffer r el) m) where   {-# INLINE return #-}   return x = MIteratee (I.Iteratee $ \onDone _ -> onDone x (I.Chunk empty))   -- {-# INLINE (>>=) #-} -- this inline makes things a bit slower with 6.12.  Seems fixed in ghc-7@@ -77,7 +77,7 @@ instance (Storable el) => MonadTrans (MIteratee (IOBuffer s el)) where   lift m = MIteratee $ I.Iteratee $ \od _ -> m >>= flip od (I.Chunk empty) -instance (MonadCatchIO m, Storable el)+instance (MonadIO m, Storable el)   => MonadIO (MIteratee (IOBuffer r el) m) where     liftIO = lift . liftIO