HList-0.4.0.0: HList.cabal
Name: HList
Version: 0.4.0.0
Category: Data
Synopsis: Heterogeneous lists
Description: HList provides many operations to create and manipulate
heterogenous lists (HLists) whose length and element
types are known at compile-time. HLists are used to implement
.
* records
* variants
* type-indexed products (TIP)
* type-indexed co-products (TIC)
* keyword arguments
.
User code should import "Data.HList" or
"Data.HList.CommonMain" for a slightly more limited scope
License: MIT
License-File: LICENSE
Author: 2004 Oleg Kiselyov (FNMOC, Monterey), Ralf Laemmel (CWI/VU, Amsterdam),
Keean Schupke (London)
Maintainer: oleg@pobox.com
Data-files: README, ChangeLog
Cabal-version: >= 1.10
Tested-With: GHC==7.6.3, GHC==7.8.4, GHC==7.10.1
Build-Type: Simple
Extra-Source-Files:
examples/*.hs,
examples/Properties/*.hs,
examples/broken/*.hs,
examples/broken/*.lhs,
examples/*.ref,
examples/broken/*.ref,
Data/HList/broken/*.hs,
Data/HList/obsolete/*.hs
Source-Repository head
type: darcs
location: http://code.haskell.org/HList
flag new_type_eq
Default: False
Manual: True
Description: use Data.Type.Equality.== to define the instance of HEq
instead of overlapping instances (in Data.HList.TypeEqO)
(needs ghc >= 7.8)
library
Build-Depends: base >= 4.6 && < 4.9,
template-haskell,
ghc-prim,
mtl,
tagged,
profunctors,
array
Exposed-modules: Data.HList,
Data.HList.CommonMain,
Data.HList.Data,
Data.HList.FakePrelude,
Data.HList.HArray,
Data.HList.HCurry,
Data.HList.HList,
Data.HList.HListPrelude,
Data.HList.HOccurs,
Data.HList.HTypeIndexed,
Data.HList.HSort,
Data.HList.HZip,
Data.HList.Keyword,
Data.HList.Label3,
Data.HList.Label5,
Data.HList.Label6,
Data.HList.Labelable,
Data.HList.MakeLabels,
Data.HList.Record,
Data.HList.RecordPuns,
Data.HList.TIC,
Data.HList.TIP,
Data.HList.TIPtuple,
Data.HList.TypeEqO,
Data.HList.Variant
Other-modules: LensDefs
Default-Language: Haskell2010
Ghc-Options: -Wall -fno-warn-missing-signatures -fno-warn-orphans
Default-Extensions: ConstraintKinds
DataKinds
DeriveDataTypeable
EmptyDataDecls
FlexibleContexts
FlexibleInstances
FunctionalDependencies
GeneralizedNewtypeDeriving
GADTs
KindSignatures
MultiParamTypeClasses
PolyKinds
RankNTypes
ScopedTypeVariables
StandaloneDeriving
TypeFamilies
TypeOperators
UndecidableInstances
Other-Extensions: CPP
TemplateHaskell
OverlappingInstances
if impl(ghc < 7.7)
Cpp-options: -DOLD_TYPEABLE -DNO_CLOSED_TF
if impl(ghc >= 7.7)
Default-Extensions: AllowAmbiguousTypes
RoleAnnotations
if impl(ghc > 7.9)
Ghc-Options: -fno-warn-unticked-promoted-constructors
if flag(new_type_eq)
Cpp-options: -DNEW_TYPE_EQ
Build-Depends: base >= 4.7
Test-Suite examples
Type: exitcode-stdio-1.0
Ghc-Options: -threaded
Main-Is: runexamples.hs
Default-Language: Haskell2010
Hs-Source-Dirs: examples
Build-Depends: base, hspec >= 1.7, directory, filepath,
process, syb, cmdargs, lens, HList, mtl
Test-Suite doctests
Type: exitcode-stdio-1.0
Ghc-Options: -threaded
if impl(ghc <= 7.9)
-- doctests include things like :t pred . maxBound, which
-- depending on the ghc version, comes out as one of
-- (Bounded a, Enum a) => ...
-- (Enum b, Bounded b) => ...
Buildable: False
Main-Is: rundoctests.hs
Hs-Source-Dirs: examples
Build-Depends: base, doctest >= 0.8, process
Default-Language: Haskell2010
Test-Suite properties
Type: exitcode-stdio-1.0
Build-Depends: base,
hspec >= 1.7,
HList,
lens,
mtl,
QuickCheck,
template-haskell,
array,
syb
Main-Is: Properties.hs
Hs-Source-Dirs: examples
Default-Language: Haskell2010