on master help sign in
Change the signature of Parser.sequence, move fold at end (#1906)
commit666dbb0bdbcb22cf828b9afca4afbbc43d1f1f36 authorRanjeet Ranjan <ranjeetr@composewell.com> dateFri 7 Oct 2022, 13:53 (4 years ago) parent61eb3f4
4 files changed+5−5
benchmark/Streamly/Benchmark/Data/Parser/ParserD.hs+1−1 core/src/Streamly/Internal/Data/Parser.hs+1−1 core/src/Streamly/Internal/Data/Parser/ParserD.hs+2−2 test/Streamly/Test/Data/Parser/ParserD.hs+1−1
benchmark/Streamly/Benchmark/Data/Parser/ParserD.hs+1−1
@@ -199,7 +199,7 @@ longestAllAny value =
199199
200200{-# INLINE sequenceParser #-}
201201sequenceParser :: MonadThrow m => Stream m Int -> m ()
202−sequenceParser = Stream.parseD (PR.sequence Fold.drain (D.repeat (PR.satisfy $ const True)))
202+sequenceParser = Stream.parseD (PR.sequence (D.repeat (PR.satisfy $ const True)) Fold.drain)
203203
204204-------------------------------------------------------------------------------
205205-- Spanning
core/src/Streamly/Internal/Data/Parser.hs+1−1
@@ -1251,7 +1251,7 @@ concatSequence ::
12511251 Fold m b c -> Stream m (Parser m a b) -> Parser m a c
12521252concatSequence f p =
12531253 let sp = fmap D.fromParserK $ Stream.toStreamD p
1254− in D.toParserK $ D.sequence f sp
1254+ in D.toParserK $ D.sequence sp f
12551255
12561256-- | Map a 'Parser' returning function on the result of a 'Parser'.
12571257--
core/src/Streamly/Internal/Data/Parser/ParserD.hs+2−2
@@ -2009,8 +2009,8 @@ sepBy
20092009-- | See 'Streamly.Internal.Data.Parser.sequence'.
20102010{-# INLINE sequence #-}
20112011sequence :: Monad m =>
2012− Fold m b c -> D.Stream m (Parser m a b) -> Parser m a c
2013−sequence (Fold fstep finitial fextract) (D.Stream sstep sstate) =
2012+ D.Stream m (Parser m a b) -> Fold m b c -> Parser m a c
2013+sequence (D.Stream sstep sstate) (Fold fstep finitial fextract) =
20142014 Parser step initial extract
20152015
20162016 where
test/Streamly/Test/Data/Parser/ParserD.hs+1−1
@@ -666,7 +666,7 @@ parserSequence =
666666 monadicIO $ do
667667 let parsers = D.fromList
668668 $ fmap (\xs -> P.fromFold $ FL.take (length xs) FL.sum) ins
669− let sequencedParser = P.sequence FL.sum parsers
669+ let sequencedParser = P.sequence parsers FL.sum
670670 outs <-
671671 run $
672672 S.parseD sequencedParser $ S.concatMap S.fromList (S.fromList ins)