packages feed

fclabels 1.1.5 → 1.1.6

raw patch · 2 files changed

+15/−9 lines, 2 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

+ Data.Label.Derive: defaultMakeLabel :: String -> String
+ Data.Label.Derive: gDerive :: (String -> String) -> Bool -> Bool -> Info -> Q [Dec]
+ Data.Label.Derive: instance IsString (Q Exp)
+ Data.Label.Derive: instance IsString (Q Pat)
+ Data.Label.Derive: instance IsString Exp
+ Data.Label.Derive: mkLabel :: Name -> Q [Dec]
+ Data.Label.Derive: mkLabels :: [Name] -> Q [Dec]
+ Data.Label.Derive: mkLabelsMono :: [Name] -> Q [Dec]
+ Data.Label.Derive: mkLabelsNoTypes :: [Name] -> Q [Dec]
+ Data.Label.Derive: mkLabelsWith :: (String -> String) -> [Name] -> Q [Dec]

Files

fclabels.cabal view
@@ -1,5 +1,5 @@ Name:          fclabels-Version:       1.1.5+Version:       1.1.6 Author:        Sebastiaan Visser, Erik Hesselink, Chris Eidhof, Sjoerd Visscher                with lots of help and feedback from others. Synopsis:      First class accessor labels.@@ -20,11 +20,14 @@                .                See the "Data.Label.Maybe" module for the use of partial labels.                .-               > 1.1.4.3 -> 1.1.5-               >   - Added `modifyAndGet` helper function.-               >     Thanks to Nikita Volkov.+               > 1.1.5 -> 1.1.6+               >   - Exposed generic TH derive function.+               >     Thanks to Bram Schuur.  Maintainer:    Sebastiaan Visser <code@fvisser.nl>+Homepage:      https://github.com/sebastiaanvisser/fclabels+Bug-Reports:   http://github.com/sebastiaanvisser/fclabels/issues+ License:       BSD3 License-File:  LICENSE Category:      Data, Lenses@@ -34,11 +37,10 @@ Library   HS-Source-Dirs: src -  Other-Modules:-    Data.Label.Derive   Exposed-Modules:     Data.Label     Data.Label.Abstract+    Data.Label.Derive     Data.Label.Maybe     Data.Label.MaybeM     Data.Label.Pure
src/Data/Label/Derive.hs view
@@ -13,6 +13,8 @@ , mkLabelsWith , mkLabelsMono , mkLabelsNoTypes+, defaultMakeLabel+, gDerive ) where  import Control.Arrow@@ -72,9 +74,11 @@ -- Helpers to generate all labels for one datatype.  derive1 :: (String -> String) -> Bool -> Bool -> Name -> Q [Dec]-derive1 makeLabel signatures concrete datatype =- do i <- reify datatype-    let -- Only process data and newtype declarations, filter out all+derive1 makeLabel signatures concrete = reify >=> gDerive makeLabel signatures concrete++gDerive :: (String -> String) -> Bool -> Bool -> Info -> Q [Dec]+gDerive makeLabel signatures concrete i =+ do let -- Only process data and newtype declarations, filter out all         -- constructors and the type variables.         (tyname, cons, vars) =           case i of