@@ -153,6 +153,10 @@ takeFramedByEsc_ _ = Stream.parse parser
153153
154154 parser = PR.takeFramedByEsc_ isEsc isBegin isEnd Fold.drain
155155
156+{-# INLINE eqBy #-}
157+eqBy :: Int -> Stream IO Int -> IO ()
158+eqBy len = Stream.parse (PR.eqBy (==) [1 .. len])
159+
156160{-# INLINE takeWhile #-}
157161takeWhile :: MonadThrow m => Int -> Stream m Int -> m ()
158162takeWhile value = Stream.parse (PR.takeWhile (<= value) Fold.drain)
@@ -473,6 +477,7 @@ o_1_space_serial value =
473477 , benchIOSink value "concatSequence" concatSequence
474478 , benchIOSink value "parseMany (groupBy (<))" (parseManyGroupBy (<))
475479 , benchIOSink value "parseMany (groupBy (==))" (parseManyGroupBy (==))
480+ , benchIOSink value "eqBy" (eqBy value)
476481 ]
477482
478483o_1_space_filesystem :: BenchEnv -> [Benchmark]