parsec-3.1.7: Monadic parser combinators

Copyright | (c) Paolo Martini 2007
License | BSD-style (see the file libraries/parsec/LICENSE)
Maintainer | derek.a.elkins@gmail.com
Stability | provisional
Portability | portable
Safe Haskell | Safe-Inferred
Language | Haskell98

Text.Parsec.String

Description

Make Strings an instance of `Stream` with `Char` token type.

Synopsis

- type Parser = Parsec String ()
- type GenParser tok st = Parsec [tok] st
- parseFromFile :: Parser a -> String -> IO (Either ParseError a)

# Documentation

type Parser = Parsec String ()

type GenParser tok st = Parsec [tok] st

parseFromFile :: Parser a -> String -> IO (Either ParseError a)

`parseFromFile p filePath` runs a string parser `p` on the input read from `filePath` using `readFile`. Returns either a `ParseError` (`Left`) or a value of type `a` (`Right`).

     main    = do{ result <- parseFromFile numbers "digits.txt"
                 ; case result of
                     Left err  -> print err
                     Right xs  -> print (sum xs)
                 }