dsv-1.0.0.0: library/DSV/AttoView.hs
module DSV.AttoView
( attoByteStringView
) where
import DSV.AttoParser
import DSV.ByteString
import DSV.Validation
import DSV.ViewType
-- attoparsec
import qualified Data.Attoparsec.ByteString as A
attoByteStringView :: e -> AttoParser a -> View e ByteString a
attoByteStringView e p =
View $ \bs ->
case A.parseOnly (p <* A.endOfInput) bs of
Left _ -> Failure e
Right x -> Success x