@@ -71,6 +71,10 @@ all value = IP.parse (PR.all (<= value))
71take :: MonadCatch m => Int -> SerialT m a -> m ()
71take :: MonadCatch m => Int -> SerialT m a -> m ()
72take value = IP.parse (PR.take value FL.drain)
72take value = IP.parse (PR.take value FL.drain)
75+takeEQ :: MonadCatch m => Int -> SerialT m a -> m ()
76+takeEQ value = IP.parse (PR.takeEQ value FL.drain)
74{-# INLINE takeWhile #-}
78{-# INLINE takeWhile #-}
75takeWhile :: MonadCatch m => Int -> SerialT m Int -> m ()
79takeWhile :: MonadCatch m => Int -> SerialT m Int -> m ()
76takeWhile value = IP.parse (PR.takeWhile (<= value) FL.drain)
80takeWhile value = IP.parse (PR.takeWhile (<= value) FL.drain)
@@ -227,6 +231,7 @@ o_1_space_serial value =
227 [ benchIOSink value "any" $ any value
231 [ benchIOSink value "any" $ any value
228 , benchIOSink value "all" $ all value
232 , benchIOSink value "all" $ all value
229 , benchIOSink value "take" $ take value
233 , benchIOSink value "take" $ take value
234+ , benchIOSink value "takeEQ" $ takeEQ value
230 , benchIOSink value "takeWhile" $ takeWhile value
235 , benchIOSink value "takeWhile" $ takeWhile value
231 , benchIOSink value "splitAp" $ splitAp value
236 , benchIOSink value "splitAp" $ splitAp value
232 , benchIOSink value "splitApBefore" $ splitApBefore value
237 , benchIOSink value "splitApBefore" $ splitApBefore value