attoparsec-enumerator: Pass input from an enumerator to an Attoparsec parser.

[ deprecated, enumerator, library, mit, parsing, text ] [ Propose Tags ]
Versions 0.1,,,, 0.2,,,,,, 0.3, 0.3.1, 0.3.2, 0.3.3, 0.3.4
Dependencies attoparsec (>=0.10 && <0.14), base (>=4.0 && <5.0), bytestring (>=0.9), enumerator (==0.4.*), text [details]
License MIT
Author John Millikin <>
Maintainer John Millikin <>
Category Text, Parsing, Enumerator
Home page
Bug tracker
Source repo head: git clone
this: git clone attoparsec-enumerator_0.3.4)
Uploaded by JohnMillikin at Sat May 16 05:30:41 UTC 2015
Distributions Debian:0.3.4, Fedora:0.3.4, FreeBSD:0.3.4, NixOS:0.3.4
Downloads 35822 total (58 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2015-05-18 [all 1 reports]
Hackage Matrix CI

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




Maintainer's Corner

For package maintainers and hackage trustees