An efficient packed UTF-8 backed Unicode text type.
An efficient packed, immutable UTF-8 backed 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 (see Data.Text
). It also provides a range of functions for converting Text
values to and from ByteStrings
, using several standard encodings (see Data.Text.Encoding
).
Efficient locale-sensitive support for text IO is also supported (see Data.Text.IO
).
These modules are intended to be imported qualified, to avoid name clashes with Prelude functions, e.g.
import qualified Data.Text as T
Relationship to the standard text package
This is a fork of the text package ported which uses UTF-8 instead of UTF-16 as its internal representation.
This release is intended to be API compatible with the text-1.2.3.0
release.
Another package providing an UTF-8 backed Text type with a diffferent cost-model is the text-short package.