@hackage pipes-text1.0.0

properly streaming text

The organization of this package follows the rule:

  • pipes-text : pipes-bytestring :: text : bytestring

Familiarity with the other three packages should give one an idea what to expect here. The package has three principal modules, Pipes.Text , Pipes.Text.Encoding and Pipes.Text.IO; the division has more or less the significance it has in the text library.

The module Pipes.Text.IO is present as a convenience. Official pipes IO uses Pipes.ByteString together with the bytestring decoding functions in Pipes.Text.Encoding. In particular, the Pipes.Text.IO functions use Text exceptions, while Pipes.Text uses the standard pipes practice of breaking with a failed parse. Thus, for example, the type of decodeUtf8 is

  • decodeUtf8 :: Monad m => Producer ByteString m r -> Producer Text m (Producer ByteString m r)

where any unparsed bytes are returned.