@@ -11,8 +11,8 @@ module Data.Conduit
1111 , Conduit
1212 -- * Connect pieces together
1313 , ($$)
14− , connectLeft
15− , connectRight
14+ , ($=)
15+ , (=$)
1616 -- * Helper functions
1717 , mkSource
1818 ) where
@@ -128,6 +128,8 @@ mkSource pull = Source $ do
128128 I.atomicModifyIORef buffer (\a -> (s ++ a, ()))
129129 }
130130
131+infixr 0 $$
132+
131133($$) :: MonadBaseControl IO m => Source m a -> Sink a m b -> ResourceT m b
132134Source msource $$ Sink msink = do
133135 sink <- msink
@@ -147,11 +149,13 @@ data NothingAfterEOF = NothingAfterEOF
147149 deriving (Show, Typeable)
148150instance Exception NothingAfterEOF
149151
150−connectLeft :: MonadBaseControl IO m
151− => Source m a
152− -> Conduit a m b
153− -> Source m b
154−connectLeft (Source msource) pipe = Source $ do
152+infixl 1 $=
153+
154+($=) :: MonadBaseControl IO m
155+ => Source m a
156+ -> Conduit a m b
157+ -> Source m b
158+Source msource $= pipe = Source $ do
155159 source <- msource
156160 source' <- unSource $ mkSource $ do
157161 ConduitResult leftover result <- sourcePull source >>= pipe
@@ -161,8 +165,10 @@ connectLeft (Source msource) pipe = Source $ do
161165 where
162166 unSource (Source s) = s
163167
164−connectRight :: MonadBaseControl IO m => Conduit a m b -> Sink b m c -> Sink a m c
165−connectRight pipe (Sink msink) = Sink $ do
168+infixr 0 =$
169+
170+(=$) :: MonadBaseControl IO m => Conduit a m b -> Sink b m c -> Sink a m c
171+pipe =$ Sink msink = Sink $ do
166172 sink <- msink
167173 return $ \stream -> do
168174 ConduitResult leftover stream' <- pipe stream