heterogeneous-list-literals: Allows the use of tuples as literals for Heterogeneous collections
This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.
This is an incredibly simple library, which makes writing literals for heterogeneous collections easy
If you write a function with the signature
hList :: HLL input output => input -> HList output
then
a :: HList '[] a = hList () b :: HList '[Bool] b = hList (OneTuple True) c :: HList '[Bool, Int, Double, String] c = hList (True, 24, 10.5, "Fire")
The full code is in test/Docs.hs
This only supports literals of length up to 20, though that can be easily extended using the code generator in src/Data/HeterogeneousListLiterals
Properties
Versions | 0.1.0.1, 0.1.0.1, 0.2.0.0 |
---|---|
Change log | ChangeLog.md |
Dependencies | base (>=4.9 && <=4.11), OneTuple (>=0.2.1) [details] |
License | BSD-3-Clause |
Author | David Millar-Durrant |
Maintainer | dmillardurrant@gmail.com |
Category | Data |
Home page | https://github.com/davidm-d/heterogeneous-list-literals |
Source repo | head: git clone https://github.com/davidm-d/heterogeneous-list-literals |
Uploaded | by DavidMD at 2018-03-23T01:24:50Z |
Modules
[Index]
Downloads
- heterogeneous-list-literals-0.1.0.1.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
Package maintainers
For package maintainers and hackage trustees