 | attoparsec-0.8.1.0: Fast combinator parsing for bytestrings | Contents | Index |
|
| Data.Attoparsec.Lazy | | Portability | unknown | | Stability | experimental | | Maintainer | bos@serpentine.com |
|
|
|
|
|
| Description |
Simple, efficient combinator parsing for lazy ByteString
strings, loosely based on the Parsec library.
This is essentially the same code as in the Data.Attoparsec
module, only with a parse function that can consume a lazy
ByteString incrementally, and a Result type that does not allow
more input to be fed in. Think of this as suitable for use with a
lazily read file, e.g. via L.readFile or L.hGetContents.
Behind the scenes, strict ByteString values are still used
internally to store parser input and manipulate it efficiently.
High-performance parsers such as string still expect strict
ByteString parameters.
|
|
| Synopsis |
|
|
|
| Documentation |
|
| data Result r |
| The result of a parse.
| | Constructors | | Fail ByteString [String] String | The parse failed. The ByteString is the input
that had not yet been consumed when the failure
occurred. The [String] is a list of contexts
in which the error occurred. The String is the
message describing the error, if any.
| | Done ByteString r | The parse succeeded. The ByteString is the
input that had not yet been consumed (if any) when
the parse succeeded.
|
| Instances | |
|
|
| module Data.Attoparsec |
|
| Running parsers
|
|
| parse :: Parser a -> ByteString -> Result a |
| Run a parser and return its result.
|
|
| parseTest :: Show a => Parser a -> ByteString -> IO () |
| Run a parser and print its result to standard output.
|
|
| Result conversion
|
|
| maybeResult :: Result r -> Maybe r |
| Convert a Result value to a Maybe value.
|
|
| eitherResult :: Result r -> Either String r |
| Convert a Result value to an Either value.
|
|
| Produced by Haddock version 2.7.2 |