HListPP: A preprocessor for HList labelable labels
A preprocessor that replaces `longDescriptiveName
with
hLens' (Label :: Label "longDescriptiveName")
Use with ghc flags -F -pgmF HListPP
, which can
be added per-file with a pragma:
❴-# OPTIONS_GHC -F -pgmF HListPP #-❵ -- change braces to ascii (haddock doesn't allow literal comments in files)
Note that `labels
is expanded to something that
takes up about 26 more columns. To avoid issues with
layout, put a newline after keywords that introduce
layout, at least if there are `labels
in the same row.
In other words:
`character.`position.`x %= \ x -> let msg = "a really long message about x>0" pos = x - 5 in if pos < 0 then error msg else pos
Instead of
`character.`position.`x %= \ x -> let msg = "a really long message about x>0" pos = x - 5 in if pos < 0 then error msg else pos
A blank library is included in this package to make it possible to depend on HListPP
Downloads
- HListPP-0.2.1.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
Versions [RSS] | 0.1, 0.2, 0.2.1, 0.2.2 |
---|---|
Change log | ChangeLog |
Dependencies | applicative-quoters (>=0.1 && <0.2), base (>=4.6 && <4.9), regex-applicative (>=0.3 && <0.4) [details] |
License | BSD-3-Clause |
Author | Adam Vogt <vogt.adam@gmail.com> |
Maintainer | Adam Vogt <vogt.adam@gmail.com> |
Category | Development |
Home page | http://code.haskell.org/~aavogt/HListPP |
Source repo | head: darcs get http://code.haskell.org/~aavogt/HListPP |
Uploaded | by AdamVogt at 2015-11-06T20:25:53Z |
Distributions | NixOS:0.2.2 |
Reverse Dependencies | 1 direct, 0 indirect [details] |
Executables | HListPP |
Downloads | 2878 total (2 in the last 30 days) |
Rating | (no votes yet) [estimated by Bayesian average] |
Your Rating | |
Status | Docs not available [build log] Last success reported on 2015-12-08 [all 14 reports] |