A time and space-efficient implementation of Unicode text. Suitable for performance critical use, both in terms of large data quantities and high speed.
Note: Read below the synopsis for important notes on the use of this module.
This module is intended to be imported qualified, to avoid name clashes with Prelude functions, e.g.
> import qualified Data.Text as T
To use an extended and very rich family of functions for working with Unicode text (including normalization, regular expressions, non-standard encodings, text breaking, and locales), see the text-icu package: http://hackage.haskell.org/package/text-icu

A TextEncoding is a specification of a conversion scheme between sequences of bytes and sequences of Unicode characters.
For example, UTF-8 is an encoding of Unicode characters into a sequence of bytes. The TextEncoding for UTF-8 is utf8.

A document of height 1 containing a literal string. text satisfies the following laws:
* s <>text t = text
> (s++
* text "" <> x = x, if x non-empty
The side condition on the last law is necessary because text "" has height 1, while empty has no height.

An efficient packed, immutable Unicode text type (both strict and lazy), with a powerful loop fusion optimization framework.
The Text type represents Unicode character strings, in a time and space-efficient manner. This package provides text processing capabilities that are optimized for performance critical use, both in terms of large data quantities and high speed.
The Text type provides character-encoding, type-safe case conversion via whole-string case conversion functions. It also provides a range of functions for converting Text values to and from ByteStrings, using several standard encodings.
Efficient locale-sensitive support for text IO is also supported.
These modules are intended to be imported qualified, to avoid name clashes with Prelude functions, e.g.
> import qualified Data.Text as T
To use an extended and very rich family of functions for working with Unicode text (including normalization, regular expressions, non-standard encodings, text breaking, and locales), see the text-icu package: http://hackage.haskell.org/package/text-icu
Version 1.0.0.0