Copyright | © 2015 Megaparsec contributors © 2007 Paolo Martini |
---|---|
License | BSD3 |
Maintainer | Mark Karpov <[email protected]> |
Stability | experimental |
Portability | portable |
Safe Haskell | None |
Language | Haskell2010 |
Text.Megaparsec.String
- type Parser = Parsec String
- parseFromFile :: Parser a -> String -> IO (Either ParseError a)
Documentation
type Parser = Parsec String Source
Different modules corresponding to various types of streams (String
,
Text
, ByteString
) define it differently, so user can use “abstract”
Parser
type and easily change it by importing different “type
modules”. This one is for strings.
parseFromFile :: Parser a -> String -> IO (Either ParseError a) Source
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)