sepBy

sepBy p sep parses zero or more occurrences of p, separated by sep. Returns a list of values returned by p.
sepBy p sep parses zero or more occurrences of p, separated by sep. Returns a list of values returned by p.
commaSep p  = p `sepBy` (symbol ",")
sepBy p sep applies zero or more occurrences of p, separated by sep. Returns a list of the values returned by p.
commaSep p  = p `sepBy` (char ',')
sepBy p sep parses zero or more occurrences of p, separated by sep. Returns a list of values returned by p.
commaSep p  = p `sepBy` (symbol ",")
sepBy p sep parses zero or more occurrences of p, separated by sep. Returns a list of values returned by p.
commaSep p = p `sepBy` comma
sepBy p sep parses zero or more occurrences of p, separated by sep. Returns a list of values returned by p.
commaSep p = p `sepBy` comma
sepBy p sep parses zero or more occurrences of p, separated by sep. Returns a list of values returned by p.
commaSep p  = p `sepBy` (symbol ",")
Parse a list of items separated by discarded junk.
p sepBy sep matches zero or more occurrences of p separated by sep
>>> match (decimal `sepBy` char ',') "1,2,3"
[[1,2,3]]

>>> match (decimal `sepBy` char ',') ""
[[]]
Deliver zero or more values of a separated by b's.
Apply two parsers alternately to an input stream. Parsing starts at the first parser and stops at the first parser. The output of the first parser is emiited and the output of the second parser is discarded. It can be used to parse a infix style pattern e.g. p1 p2 p1 . Empty input or single parse of the first parser is accepted. Definitions:
>>> sepBy p1 p2 f = Parser.deintercalate p1 p2 (Fold.catLefts f)

>>> sepBy p1 p2 f = Parser.sepBy1 p1 p2 f <|> Parser.fromEffect (Fold.extractM f)
Examples:
>>> p1 = Parser.takeWhile1 (not . (== '+')) Fold.toList

>>> p2 = Parser.satisfy (== '+')

>>> p = Parser.sepBy p1 p2 Fold.toList

>>> Stream.parse p $ Stream.fromList ""
Right []

>>> Stream.parse p $ Stream.fromList "1"
Right ["1"]

>>> Stream.parse p $ Stream.fromList "1+"
Right ["1"]

>>> Stream.parse p $ Stream.fromList "1+2+3"
Right ["1","2","3"]
sepBy p sep parses zero or more occurrences of p, separated by sep. Returns a list of values returned by p.
sepBy p sep parses zero or more occurrences of p, separated by sep. Returns a list of values returned by p.
Separate Keyword list with delimiter Keyword and concatenate into one Keyword.
Represents any number of values formatted using the first argument, separated by the second format argumewnt in serialized form. Similar to the usual sepBy combinator.
>>> testParse (takeCharsWhile isLetter `sepBy` literal ",") "foo,bar,baz"
Right [([],"foo,bar,baz"),(["foo"],",bar,baz"),(["foo","bar"],",baz"),(["foo","bar","baz"],"")]
r `sepBy` sep parses zero or more occurences of r, separated by sep. Biased towards matching more.
Concatenate a list od documents, separating them by a given separator.
sepBy1 p sep parses one or more occurrences of p, separated by sep. Returns a list of values returned by p.
sepBy1 p sep parses one or more occurrences of p, separated by sep. Returns a list of values returned by p.