ghc-text-short/text-short-0.1.3.cabal
2021-08-05 00:14:13 +08:00

92 lines
3.2 KiB
Plaintext

cabal-version: 1.18
name: text-short
version: 0.1.3
x-revision: 3
synopsis: Memory-efficient representation of Unicode text strings
license: BSD3
license-file: LICENSE
author: Herbert Valerio Riedel
maintainer: hvr@gnu.org
bug-reports: https://github.com/hvr/text-short/issues
category: Data
build-type: Simple
description: This package provides the 'ShortText' type which is suitable for keeping many short strings in memory. This is similiar to how 'ShortByteString' relates to 'ByteString'.
.
The main difference between 'Text' and 'ShortText' is that 'ShortText' uses UTF-8 instead of UTF-16 internally and also doesn't support zero-copy slicing (thereby saving 2 words). Consequently, the memory footprint of a (boxed) 'ShortText' value is 4 words (2 words when unboxed) plus the length of the UTF-8 encoded payload.
tested-with: GHC==8.10.1, GHC==8.8.3, GHC==8.6.5, GHC==8.4.4, GHC==8.2.2, GHC==8.0.2, GHC==7.10.3, GHC==7.8.4
extra-source-files: ChangeLog.md
Source-Repository head
Type: git
Location: https://github.com/hvr/text-short.git
flag asserts
description: Enable runtime-checks via @assert@
default: False
manual: True
library
exposed-modules: Data.Text.Short
Data.Text.Short.Partial
Data.Text.Short.Unsafe
other-modules: Data.Text.Short.Internal
build-depends: base >= 4.7 && < 4.16
, bytestring >= 0.10.4 && < 0.12
, hashable >= 1.2.6 && < 1.4
, deepseq >= 1.3 && < 1.5
, text >= 1.0 && < 1.3
, binary >= 0.7.1 && < 0.9
, ghc-prim >= 0.3.1 && < 0.8
if !impl(ghc >= 8.0)
build-depends: semigroups >= 0.18.2 && < 0.20
-- GHC version specific PrimOps
if impl(ghc >= 8.4)
hs-source-dirs: src-ghc804
else
c-sources: cbits/memcmp.c
hs-source-dirs: src-ghc708
other-modules: PrimOps
hs-source-dirs: src
default-language: Haskell2010
other-extensions: CPP
, GeneralizedNewtypeDeriving
, MagicHash
, UnliftedFFITypes
, Trustworthy
, Unsafe
c-sources: cbits/cbits.c
if flag(asserts)
ghc-options: -fno-ignore-asserts
else
cc-options: -DNDEBUG=1
ghc-options: -Wall
cc-options: -O3 -Wall
test-suite tests
type: exitcode-stdio-1.0
hs-source-dirs: src-test
main-is: Tests.hs
build-depends: base
, binary
, text
, text-short
-- deps which don't inherit constraints from library stanza:
, tasty >= 1.0.0 && < 1.3
, tasty-quickcheck >= 0.10 && < 0.11
, tasty-hunit >= 0.10.0 && < 0.11
, quickcheck-instances >= 0.3.14 && < 0.4
default-language: Haskell2010