text-utf8-1.2.3.0: text-utf8.cabal
cabal-version: 1.12
name: text-utf8
version: 1.2.3.0
homepage: https://github.com/text-utf8
bug-reports: https://github.com/text-utf8/text-utf8/issues
synopsis: An efficient packed UTF-8 backed Unicode text type.
description:
.
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](https://hackage.haskell.org/package/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](https://hackage.haskell.org/package/text-short) package.
license: BSD2
license-file: LICENSE
author: Bryan O'Sullivan <bos@serpentine.com>
maintainer: Herbert Valerio Riedel <hvr@gnu.org>
copyright: 2009-2011 Bryan O'Sullivan, 2008-2009 Tom Harper
category: Data, Text
build-type: Simple
tested-with: GHC==8.4.2, GHC==8.2.2, GHC==8.0.2, GHC==7.10.3, GHC==7.8.4
extra-source-files:
-- scripts/CaseFolding.txt
-- scripts/SpecialCasing.txt
-- README.markdown
benchmarks/Setup.hs
benchmarks/cbits/*.c
benchmarks/haskell/*.hs
benchmarks/haskell/Benchmarks/*.hs
benchmarks/haskell/Benchmarks/Programs/*.hs
benchmarks/python/*.py
benchmarks/ruby/*.rb
benchmarks/text-benchmarks.cabal
changelog.md
include/*.h
scripts/*.hs
tests-and-benchmarks.markdown
tests/*.hs
tests/.ghci
tests/Makefile
tests/Tests/*.hs
tests/Tests/Properties/*.hs
tests/cabal.config
tests/scripts/*.sh
tests/text-tests.cabal
flag developer
description: operate in developer mode
default: False
manual: True
flag integer-simple
description:
Use the [simple integer library](http://hackage.haskell.org/package/integer-simple)
instead of [integer-gmp](http://hackage.haskell.org/package/integer-gmp)
default: False
manual: False
library
c-sources: cbits/cbits.c
include-dirs: include
default-language: Haskell2010
exposed-modules:
Data.Text
Data.Text.Array
Data.Text.Encoding
Data.Text.Encoding.Error
Data.Text.Foreign
Data.Text.IO
Data.Text.Internal
Data.Text.Internal.Builder
Data.Text.Internal.Builder.Functions
Data.Text.Internal.Builder.Int.Digits
Data.Text.Internal.Builder.RealFloat.Functions
Data.Text.Internal.Encoding.Fusion
Data.Text.Internal.Encoding.Fusion.Common
Data.Text.Internal.Encoding.Utf16
Data.Text.Internal.Encoding.Utf32
Data.Text.Internal.Encoding.Utf8
Data.Text.Internal.Functions
Data.Text.Internal.Fusion
Data.Text.Internal.Fusion.CaseMapping
Data.Text.Internal.Fusion.Common
Data.Text.Internal.Fusion.Size
Data.Text.Internal.Fusion.Types
Data.Text.Internal.IO
Data.Text.Internal.Lazy
Data.Text.Internal.Lazy.Encoding.Fusion
Data.Text.Internal.Lazy.Fusion
Data.Text.Internal.Lazy.Search
Data.Text.Internal.Private
Data.Text.Internal.Read
Data.Text.Internal.Search
Data.Text.Internal.Unsafe
Data.Text.Internal.Unsafe.Char
Data.Text.Internal.Unsafe.Shift
Data.Text.Lazy
Data.Text.Lazy.Builder
Data.Text.Lazy.Builder.Int
Data.Text.Lazy.Builder.RealFloat
Data.Text.Lazy.Encoding
Data.Text.Lazy.IO
Data.Text.Lazy.Internal
Data.Text.Lazy.Read
Data.Text.Read
Data.Text.Unsafe
other-modules:
Data.Text.Show
build-depends:
array >= 0.5.0.0 && < 0.6,
base >= 4.7.0.0 && < 4.12,
binary >= 0.7.1.0 && < 0.9,
deepseq >= 1.1.0.0 && < 1.5,
ghc-prim >= 0.3.1.0 && < 0.6,
bytestring >= 0.10.4 && < 0.11
cpp-options: -DHAVE_DEEPSEQ
ghc-options: -Wall -fwarn-tabs -funbox-strict-fields -O2
if flag(developer)
ghc-prof-options: -auto-all
ghc-options: -Werror
cpp-options: -DASSERTS
if flag(integer-simple)
cpp-options: -DINTEGER_SIMPLE
build-depends: integer-simple >= 0.1 && < 0.5
else
cpp-options: -DINTEGER_GMP
build-depends: integer-gmp >= 0.5.1 && < 1.1
test-suite tests
type: exitcode-stdio-1.0
c-sources: cbits/cbits.c
include-dirs: include
default-language: Haskell2010
default-extensions: NondecreasingIndentation
ghc-options:
-Wall -threaded -rtsopts
cpp-options:
-DASSERTS -DHAVE_DEEPSEQ -DTEST_SUITE
-- modules specific to test-suite
hs-source-dirs: tests
main-is: Tests.hs
other-modules:
Tests.Properties
Tests.Properties.Mul
Tests.QuickCheckUtils
Tests.Regressions
Tests.SlowFunctions
Tests.Utils
-- Same as in `library` stanza; this is needed by cabal for accurate
-- file-monitoring as well as to avoid `-Wmissing-home-modules`
-- warnings We can't use an inter-package library dependency because
-- of different `ghc-options`/`cpp-options` (as a side-benefitt,
-- this enables per-component build parallelism in `cabal
-- new-build`!); We could, however, use cabal-version:2.2's `common`
-- blocks at some point in the future to reduce the duplication.
hs-source-dirs: .
other-modules:
Data.Text
Data.Text.Array
Data.Text.Encoding
Data.Text.Encoding.Error
Data.Text.Foreign
Data.Text.IO
Data.Text.Internal
Data.Text.Internal.Builder
Data.Text.Internal.Builder.Functions
Data.Text.Internal.Builder.Int.Digits
Data.Text.Internal.Builder.RealFloat.Functions
Data.Text.Internal.Encoding.Fusion
Data.Text.Internal.Encoding.Fusion.Common
Data.Text.Internal.Encoding.Utf16
Data.Text.Internal.Encoding.Utf32
Data.Text.Internal.Encoding.Utf8
Data.Text.Internal.Functions
Data.Text.Internal.Fusion
Data.Text.Internal.Fusion.CaseMapping
Data.Text.Internal.Fusion.Common
Data.Text.Internal.Fusion.Size
Data.Text.Internal.Fusion.Types
Data.Text.Internal.IO
Data.Text.Internal.Lazy
Data.Text.Internal.Lazy.Encoding.Fusion
Data.Text.Internal.Lazy.Fusion
Data.Text.Internal.Lazy.Search
Data.Text.Internal.Private
Data.Text.Internal.Read
Data.Text.Internal.Search
Data.Text.Internal.Unsafe
Data.Text.Internal.Unsafe.Char
Data.Text.Internal.Unsafe.Shift
Data.Text.Lazy
Data.Text.Lazy.Builder
Data.Text.Lazy.Builder.Int
Data.Text.Lazy.Builder.RealFloat
Data.Text.Lazy.Encoding
Data.Text.Lazy.IO
Data.Text.Lazy.Internal
Data.Text.Lazy.Read
Data.Text.Read
Data.Text.Unsafe
Data.Text.Show
build-depends:
HUnit >= 1.2,
QuickCheck >= 2.7,
array,
base,
binary,
bytestring,
deepseq,
directory,
ghc-prim,
quickcheck-unicode,
random,
test-framework >= 0.4,
test-framework-hunit >= 0.2,
test-framework-quickcheck2 >= 0.2
if flag(integer-simple)
cpp-options: -DINTEGER_SIMPLE
build-depends: integer-simple >= 0.1 && < 0.5
else
cpp-options: -DINTEGER_GMP
build-depends: integer-gmp >= 0.2
source-repository head
type: git
location: https://github.com/text-utf8/text-utf8