1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173
|
cabal-version: 2.2
name: unicode-data
version: 0.4.0.1
x-revision: 3
synopsis: Access Unicode Character Database (UCD)
description:
@unicode-data@ provides Haskell APIs to efficiently access the
<https://www.unicode.org/ucd/ Unicode character database> (UCD).
Performance is the primary goal in the design of this package.
.
The Haskell data structures are generated programmatically from the UCD files.
The latest Unicode version supported by this library is
@<https://www.unicode.org/versions/Unicode15.0.0/ 15.0.0>@.
homepage: http://github.com/composewell/unicode-data
bug-reports: https://github.com/composewell/unicode-data/issues
license: Apache-2.0
license-file: LICENSE
author: Composewell Technologies and Contributors
maintainer: streamly@composewell.com
copyright: 2020 Composewell Technologies and Contributors
category: Data,Text,Unicode
stability: Experimental
build-type: Simple
tested-with: GHC==8.0.2
, GHC==8.2.2
, GHC==8.4.4
, GHC==8.6.5
, GHC==8.8.4
, GHC==8.10.7
, GHC==9.0.1
, GHC==9.2.1
, GHC==9.4.2
, GHC==9.6.0
extra-source-files:
Changelog.md
README.md
NOTICE
source-repository head
type: git
location: https://github.com/composewell/unicode-data
flag ucd2haskell
description: Build the ucd2haskell executable
manual: True
default: False
common default-extensions
default-extensions:
BangPatterns
DeriveGeneric
MagicHash
RecordWildCards
ScopedTypeVariables
TupleSections
FlexibleContexts
-- Experimental, may lead to issues
DeriveAnyClass
TemplateHaskell
UnboxedTuples
common compile-options
ghc-options: -Wall
-fwarn-identities
-fwarn-incomplete-record-updates
-fwarn-incomplete-uni-patterns
-fwarn-tabs
default-language: Haskell2010
library
import: default-extensions, compile-options
default-language: Haskell2010
exposed-modules:
Unicode.Char
-- The module structure is derived from
-- https://www.unicode.org/reports/tr44/#Property_Index_Table
Unicode.Char.Case
Unicode.Char.Case.Compat
Unicode.Char.General
Unicode.Char.General.Blocks
Unicode.Char.General.Compat
Unicode.Char.Identifiers
Unicode.Char.Normalization
Unicode.Char.Numeric
Unicode.Char.Numeric.Compat
-- Internal files
Unicode.Internal.Bits
Unicode.Internal.Division
Unicode.Internal.Unfold
-- Generated files
-- This module structure is largely based on the UCD file names from which
-- the properties are generated.
Unicode.Internal.Char.Blocks
Unicode.Internal.Char.CaseFolding
Unicode.Internal.Char.DerivedCoreProperties
Unicode.Internal.Char.DerivedNumericValues
Unicode.Internal.Char.PropList
Unicode.Internal.Char.SpecialCasing.LowerCaseMapping
Unicode.Internal.Char.SpecialCasing.TitleCaseMapping
Unicode.Internal.Char.SpecialCasing.UpperCaseMapping
Unicode.Internal.Char.UnicodeData.CombiningClass
Unicode.Internal.Char.UnicodeData.Compositions
Unicode.Internal.Char.UnicodeData.Decomposable
Unicode.Internal.Char.UnicodeData.DecomposableK
Unicode.Internal.Char.UnicodeData.Decompositions
Unicode.Internal.Char.UnicodeData.DecompositionsK
Unicode.Internal.Char.UnicodeData.DecompositionsK2
Unicode.Internal.Char.UnicodeData.GeneralCategory
Unicode.Internal.Char.UnicodeData.SimpleLowerCaseMapping
Unicode.Internal.Char.UnicodeData.SimpleTitleCaseMapping
Unicode.Internal.Char.UnicodeData.SimpleUpperCaseMapping
hs-source-dirs: lib
ghc-options: -O2
build-depends:
base >=4.7 && <4.21
executable ucd2haskell
import: default-extensions, compile-options
default-language: Haskell2010
ghc-options: -O2
hs-source-dirs: exe
main-is: UCD2Haskell.hs
other-modules: Parser.Text
if flag(ucd2haskell)
buildable: True
build-depends:
base >= 4.7 && < 4.20
, containers >= 0.5 && < 0.7
, directory >= 1.3.6 && < 1.3.9
, filepath >= 1.4.100 && < 1.5
, getopt-generics >= 0.13 && < 0.14
, streamly >= 0.8.0 && < 0.8.1
else
buildable: False
test-suite test
-- Testsuite is broken with GHC 9.6,
-- see https://github.com/composewell/unicode-data/issues/118
buildable: False
import: default-extensions, compile-options
type: exitcode-stdio-1.0
main-is: Main.hs
hs-source-dirs:
test
other-modules:
Unicode.CharSpec
build-depends:
base >= 4.7 && < 4.20
, hspec >= 2.0 && < 2.12
, unicode-data
-- We need to match a GHC version with the same Unicode version.
-- See: test/Unicode/CharSpec.hs for compatibility table.
if impl(ghc >= 9.5.1)
cpp-options: -DCOMPATIBLE_GHC_UNICODE
default-language: Haskell2010
benchmark bench
import: default-extensions, compile-options
type: exitcode-stdio-1.0
hs-source-dirs: bench
main-is: Main.hs
build-depends:
base >= 4.7 && < 4.20,
deepseq >= 1.1 && < 1.6,
tasty-bench >= 0.2.5 && < 0.4,
tasty >= 1.4.1,
unicode-data
ghc-options: -O2 -fdicts-strict -rtsopts
|