cabal-version: >=2.0
name: red-black-record
version: 1.0.0.0
synopsis: Extensible records and variants indexed by a type-level Red-Black tree.
description: A library that provides extensible records and variants,
both indexed by a type-level red-black tree that maps
Symbol keys to value Types.
.
The keys correspond to fields
names in records, and to branch names in variants.
.
Each value type in a field or branch comes wrapped in a
type constructor of kind @Type -> Type@.
.
The records and variants can be converted to and from
regular Haskell datatypes; also to and from the unlabelled
n-ary products and sums of the @sop-core@ package.
license: BSD3
license-file: LICENSE
author: Daniel Diaz
maintainer: diaz_carrete@yahoo.com
category: Data
extra-source-files: CHANGELOG.md
build-type: Simple
library
exposed-modules: Data.RBR
Data.RBR.Examples
Data.RBR.Internal
build-depends: base >= 4.10.0.0 && < 5,
sop-core >= 0.4.0.0 && < 0.5
hs-source-dirs: lib
default-language: Haskell2010
test-suite doctests
type: exitcode-stdio-1.0
hs-source-dirs: tests
ghc-options: -threaded
main-is: doctests.hs
build-depends: base >= 4.10.0.0 && < 5,
sop-core >= 0.4.0.0 && < 0.5,
red-black-record,
aeson >= 1.4.0.0 && < 1.5,
bytestring >= 0.10,
text >= 1.1,
profunctors >= 5,
doctest >= 0.16
default-language: Haskell2010
test-suite tests
type: exitcode-stdio-1.0
hs-source-dirs: tests
main-is: tests.hs
build-depends:
base >= 4.10.0.0 && < 5,
sop-core >= 0.4.0.0 && < 0.5,
red-black-record,
tasty >= 0.10.1.1,
tasty-hunit >= 0.9.2
default-language: Haskell2010