classy-prelude-conduit 0.3.1 → 0.4.0
raw patch · 2 files changed
+22/−3 lines, 2 filesdep ~classy-preludedep ~conduitPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: classy-prelude, conduit
API changes (from Hackage documentation)
+ ClassyPrelude.Conduit: instance (Monad m, i ~ Text, o ~ Text) => CanLines (Pipe l i o r m r)
+ ClassyPrelude.Conduit: instance (Monad m, i ~ i', i ~ i'') => CanFilterM (Pipe l i i' r m r) m i''
+ ClassyPrelude.Conduit: instance (MonadThrow m, i ~ ByteString, o ~ Text) => CanDecodeUtf8 (Pipe l i o r m r)
+ ClassyPrelude.Conduit: instance (MonadThrow m, i ~ Text, o ~ ByteString) => CanEncodeUtf8 (Pipe l i o r m r)
Files
- ClassyPrelude/Conduit.hs +15/−0
- classy-prelude-conduit.cabal +7/−3
ClassyPrelude/Conduit.hs view
@@ -6,6 +6,7 @@ ( -- * Re-export module ClassyPrelude , module Data.Conduit+ , module Data.Conduit.List -- * XML , X.Document (..) , X.Name (..)@@ -18,8 +19,10 @@ import ClassyPrelude.Classes import Data.Conduit+import Data.Conduit.List (consume, sinkNull) import qualified Data.Conduit.List as CL import qualified Data.Conduit.Binary as CB+import qualified Data.Conduit.Text as CT import qualified Text.XML as X @@ -40,9 +43,21 @@ concatMap = CL.concatMap instance (Monad m, i ~ i', i ~ i'', r ~ r') => CanFilter (Pipe l i i' r m r') i'' where filter = CL.filter+instance (Monad m, i ~ i', i ~ i'') => CanFilterM (Pipe l i i' r m r) m i'' where+ filterM f = awaitForever $ \i -> do+ b <- lift $ f i+ when b (yield i) instance (Monad m, i ~ i', o ~ o', m ~ m', r ~ r') => CanMapM (Pipe l i o r m r') m' i' o' where mapM = CL.mapM instance (Monad m, i ~ i', m ~ m', r ~ r') => CanMapM_ (Pipe l i o r m r') m' i' where mapM_ f = awaitForever $ lift . f instance (Monad m, i ~ i', r ~ r') => CanFold (Pipe l i o u m r) i' r' where fold = CL.fold++instance (MonadThrow m, i ~ Text, o ~ ByteString) => CanEncodeUtf8 (Pipe l i o r m r) where+ encodeUtf8 = CT.encode CT.utf8+instance (MonadThrow m, i ~ ByteString, o ~ Text) => CanDecodeUtf8 (Pipe l i o r m r) where+ decodeUtf8 = CT.decode CT.utf8++instance (Monad m, i ~ Text, o ~ Text) => CanLines (Pipe l i o r m r) where+ lines = CT.lines
classy-prelude-conduit.cabal view
@@ -1,5 +1,5 @@ name: classy-prelude-conduit-version: 0.3.1+version: 0.4.0 synopsis: conduit instances for classy-prelude description: conduit instances for classy-prelude homepage: https://github.com/snoyberg/classy-prelude@@ -14,7 +14,11 @@ library exposed-modules: ClassyPrelude.Conduit build-depends: base >= 4 && < 5- , conduit >= 0.5 && < 0.6+ , conduit >= 0.5.3 && < 0.6 , xml-conduit >= 1.0 && < 1.1- , classy-prelude >= 0.3.1 && < 0.4+ , classy-prelude >= 0.4 && < 0.5 ghc-options: -Wall -fno-warn-orphans++source-repository head+ type: git+ location: git://github.com/snoyberg/classy-prelude.git