text-1.1.0.0: An efficient packed Unicode text type.

Portabilityportable
Stabilityexperimental
Maintainerbos@serpentine.com
Safe HaskellNone

Data.Text.Internal.Lazy.Encoding.Fusion

Contents

Description

Warning: this is an internal module, and does not have a stable API or name. Functions in this module may not check or enforce preconditions expected by public modules. Use at your own risk!

Fusible Stream-oriented functions for converting between lazy Text and several common encodings.

Synopsis

Streaming

streamUtf8 :: OnDecodeError -> ByteString -> Stream CharSource

O(n) Convert a lazy ByteString into a 'Stream Char', using UTF-8 encoding.

streamUtf16LE :: OnDecodeError -> ByteString -> Stream CharSource

O(n) Convert a ByteString into a 'Stream Char', using little endian UTF-16 encoding.

streamUtf16BE :: OnDecodeError -> ByteString -> Stream CharSource

O(n) Convert a ByteString into a 'Stream Char', using big endian UTF-16 encoding.

streamUtf32LE :: OnDecodeError -> ByteString -> Stream CharSource

O(n) Convert a ByteString into a 'Stream Char', using little endian UTF-32 encoding.

streamUtf32BE :: OnDecodeError -> ByteString -> Stream CharSource

O(n) Convert a ByteString into a 'Stream Char', using big endian UTF-32 encoding.

Unstreaming

unstream :: Stream Word8 -> ByteStringSource

O(n) Convert a Stream Word8 to a lazy ByteString.