92 lines
3.1 KiB
Plaintext
92 lines
3.1 KiB
Plaintext
cabal-version: 1.18
|
|
|
|
name: text-short
|
|
version: 0.1.2
|
|
x-revision: 2
|
|
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.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.13
|
|
, bytestring >= 0.10.4 && < 0.11
|
|
, 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.6
|
|
|
|
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
|