attoparsec-enumerator-0.3.1: Pass input from an enumerator to an Attoparsec parser.
This library allows an Attoparsec parser to receive input incrementally from an enumerator. This could be used for parsing large files, or implementing binary network protocols.
(-# LANGUAGE OverloadedStrings #-) import Control.Applicative import Data.Attoparsec import Data.Attoparsec.Enumerator import Data.Enumerator import Data.Enumerator.Binary (enumHandle) import Data.Enumerator.List import System.IO parser = string "foo" <|> string "bar" main = do xy <- run_ (enumHandle 1 stdin $$ do x <- iterParser parser y <- iterParser parser return (x, y)) print xy
Modules
- Data
- Attoparsec