packages feed

conduit-extra 0.1.5 → 0.1.6

raw patch · 4 files changed

+29/−1 lines, 4 filesdep +foldl

Dependencies added: foldl

Files

Data/Conduit/Extra.hs view
@@ -2,6 +2,7 @@     ( module Data.Conduit.Extra.ZipSink     , module Data.Conduit.Extra.ZipConduit     , module Data.Conduit.Extra.Resumable+    , module Data.Conduit.Extra.Foldl     , fuseLeftovers     , fuseReturnLeftovers     ) where@@ -9,6 +10,7 @@ import Data.Conduit.Extra.ZipSink import Data.Conduit.Extra.ZipConduit import Data.Conduit.Extra.Resumable+import Data.Conduit.Extra.Foldl import Data.Conduit import Data.Conduit.Internal (Pipe (..), ConduitM (..)) import Control.Monad (liftM)
+ Data/Conduit/Extra/Foldl.hs view
@@ -0,0 +1,21 @@+{-# LANGUAGE RankNTypes #-}+-- | Adapter module to work with the foldl package.+module Data.Conduit.Extra.Foldl where++import qualified Control.Foldl as F+import Data.Conduit+import Control.Monad.Trans.Class (lift)+import qualified Data.Conduit.List as CL++-- | Convert a 'F.Fold' into a 'Consumer'.+--+-- Since 0.1.6+sinkFold :: Monad m => F.Fold a b -> Consumer a m b+sinkFold (F.Fold f seed extract) = fmap extract (CL.fold f seed)++-- | Convert a 'F.FoldM' into a 'Consumer'.+--+-- Since 0.1.6+sinkFoldM :: Monad m => F.FoldM m a b -> Consumer a m b+sinkFoldM (F.FoldM f mseed extract) =+    lift mseed >>= CL.foldM f >>= lift . extract
conduit-extra.cabal view
@@ -1,5 +1,5 @@ Name:                conduit-extra-Version:             0.1.5+Version:             0.1.6 Synopsis:            Experimental helper functions for conduit. Description:     This package is meant as a testing ground for new concepts in conduit. The idea is to have a much lower barrier to entry for this library relative to conduit itself. This way, conduit itself will continue to have a best-practices, minimal, stable API, while people are free to try crazy new features.@@ -14,6 +14,7 @@  Library   Exposed-modules:     Data.Conduit.Extra+                     , Data.Conduit.Extra.Foldl                      , Data.Conduit.Extra.Pipes                      , Data.Conduit.Extra.Resumable                      , Data.Conduit.Extra.ZipSink@@ -28,6 +29,7 @@                      , transformers                      , vector                      , void+                     , foldl   ghc-options:     -Wall  test-suite test@@ -46,6 +48,7 @@                    , text                    , resourcet                    , void+                   , foldl     ghc-options:     -Wall  source-repository head
test/main.hs view
@@ -14,6 +14,7 @@ import Data.Conduit (runResourceT) import qualified Data.Conduit.ExtraSpec as ES import qualified Data.Conduit.Extra.ZipConduitSpec as ZipConduit+import qualified Data.Conduit.Extra.FoldlSpec as FS   main :: IO ()@@ -35,3 +36,4 @@      ES.spec     ZipConduit.spec+    FS.spec