combine
combine copied to clipboard
upper() and lower() don't work as expected
This definitely surprised me. The checks are just for == against String.upper and String.lower, which don't do anything with symbols...
iex(3)> "[Option" |> Combine.parse(Combine.Parsers.Text.upper())
["["]
iex(4)> "[Option" |> Combine.parse(Combine.Parsers.Text.lower())
["["]
I would expect, at least, for those parsers to admit mutually exclusive items.
Something like StreamData would be great for this library.