packages feed

cereal-enumerator 0.3 → 0.3.1

raw patch · 2 files changed

+11/−11 lines, 2 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

- Data.Serialize.Get.Enumerator: data ParseError
+ Data.Serialize.Get.Enumerator: newtype ParseError

Files

Data/Serialize/Get/Enumerator.hs view
@@ -13,16 +13,17 @@ import Data.Enumerator import Data.ByteString as BS -data ParseError = ParseError String-                deriving (Show, Typeable)+newtype ParseError = ParseError String+                   deriving (Show, Typeable)  instance Exception ParseError --- | Convert a 'Get' to an 'Iteratee'. The resulting 'Iteratee' emits a--- 'ParseError' on failure.+-- | Convert a 'Get' to an 'Iteratee'. The resulting 'Iteratee' may fail with a+-- 'ParseError'. iterGet :: Monad m => Get a -> Iteratee ByteString m a iterGet = continue . step . runGetPartial   where+     step p (Chunks xs) = loop p (P.filter (not . BS.null) xs)     step p EOF = case feed mempty (p mempty) of         Done r _  -> yield r EOF@@ -31,12 +32,11 @@      loop p [] = continue (step p)     loop p (x:xs) = case p x of-            Done r bs -> yield r $ Chunks $ if BS.null bs then xs else bs:xs-            Partial k -> loop k xs-            Fail s    -> parseError s+        Done r bs -> yield r $ Chunks $ if BS.null bs then xs else bs:xs+        Partial k -> loop k xs+        Fail s    -> parseError s      parseError = throwError . ParseError -feed :: ByteString -> Result a -> Result a-feed s (Partial k) = k s-feed _ r = r+    feed s (Partial k) = k s+    feed _ r = r
cereal-enumerator.cabal view
@@ -1,5 +1,5 @@ name:                cereal-enumerator-version:             0.3+version:             0.3.1 synopsis:            Deserialize things with cereal and enumerator license:             PublicDomain author:              Patrick Palka