Hoogle Search

Within LTS Haskell 24.45 (ghc-9.10.3)

Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.

  1. scanMany :: forall (m :: Type -> Type) a b c . Monad m => Fold m a b -> Fold m b c -> Fold m a c

    streamly-core Streamly.Internal.Data.Fold

    Scan the input of a Fold to change it in a stateful manner using another Fold. The scan restarts with a fresh state if the fold terminates. Pre-release

  2. unfoldMany :: forall (m :: Type -> Type) a b c . Monad m => Unfold m a b -> Fold m b c -> Fold m a c

    streamly-core Streamly.Internal.Data.Fold

    Unfold and flatten the input stream of a fold.

    Stream.fold (unfoldMany u f) = Stream.fold f . Stream.unfoldMany u
    
    Pre-release

  3. many :: forall (m :: Type -> Type) a b c . Monad m => Parser a m b -> Fold m b c -> Parser a m c

    streamly-core Streamly.Internal.Data.Parser

    Collect zero or more parses. Apply the supplied parser repeatedly on the input stream and push the parse results to a downstream fold. Stops: when the downstream fold stops or the parser fails. Fails: never, produces zero or more results.

    >>> many = Parser.countBetween 0 maxBound
    
    Compare with many.

  4. manyP :: forall a (m :: Type -> Type) b c . Parser a m b -> Parser b m c -> Parser a m c

    streamly-core Streamly.Internal.Data.Parser

    Like many but uses a Parser instead of a Fold to collect the results. Parsing stops or fails if the collecting parser stops or fails. Unimplemented

  5. manyThen :: forall a (m :: Type -> Type) b x c . Parser a m b -> Parser a m x -> Fold m b c -> Parser a m c

    streamly-core Streamly.Internal.Data.Parser

    manyThen f collect recover repeats the parser collect on the input and collects the output in the supplied fold. If the the parser collect fails, parser recover is run until it stops and then we start repeating the parser collect again. The parser fails if the recovery parser fails. For example, this can be used to find a key frame in a video stream after an error. Unimplemented

  6. manyTill :: forall (m :: Type -> Type) a b x c . Monad m => Parser a m b -> Parser a m x -> Fold m b c -> Parser a m c

    streamly-core Streamly.Internal.Data.Parser

    manyTill chunking test f tries the parser test on the input, if test fails it backtracks and tries chunking, after chunking succeeds test is tried again and so on. The parser stops when test succeeds. The output of test is discarded and the output of chunking is accumulated by the supplied fold. The parser fails if chunking fails. Stops when the fold f stops.

  7. manyTillP :: forall a (m :: Type -> Type) b x c . Parser a m b -> Parser a m x -> Parser b m c -> Parser a m c

    streamly-core Streamly.Internal.Data.Parser

    Like manyTill but uses a Parser to collect the results instead of a Fold. Parsing stops or fails if the collecting parser stops or fails. We can implemnent parsers like the following using manyTillP:

    countBetweenTill m n f p = manyTillP (takeBetween m n f) p
    
    Unimplemented

  8. splitMany :: forall (m :: Type -> Type) a b c . Monad m => Parser a m b -> Fold m b c -> Parser a m c

    streamly-core Streamly.Internal.Data.Parser

    See documentation of many. Pre-release

  9. splitManyPost :: forall (m :: Type -> Type) a b c . Monad m => Parser a m b -> Fold m b c -> Parser a m c

    streamly-core Streamly.Internal.Data.Parser

    Like splitMany, but inner fold emits an output at the end even if no input is received. Internal

  10. parseMany :: forall (m :: Type -> Type) a b x . Monad m => Parser a m b -> Producer m (Source x a) a -> Producer m (Source x a) (Either ParseError b)

    streamly-core Streamly.Internal.Data.Producer

    Apply a parser repeatedly on a buffered source producer to generate a producer of parsed values. Pre-release

Page 207 of many | Previous | Next