on master help sign in
Add Nau.Field
commitfa216dda071860d7fa54166d2c5f06177cb1317c authorSridhar Ratnakumar <srid@srid.ca> dateWed 29 Jul 2020, 21:11 (6 years ago) parent6b88465
3 files changed+18
rec.cabal+10 src/Record.hs+1 src/Record/Field.hs+7
rec.cabal+10
@@ -25,22 +25,32 @@ library
2525 Record.Tuple
2626
2727 default-extensions:
28+ BlockArguments
2829 DataKinds
30+ DeriveGeneric
31+ DerivingStrategies
32+ DuplicateRecordFields
2933 FlexibleContexts
3034 FlexibleInstances
3135 FunctionalDependencies
3236 GADTs
37+ InstanceSigs
3338 KindSignatures
39+ LambdaCase
3440 MultiParamTypeClasses
3541 OverloadedLabels
3642 OverloadedStrings
43+ PatternSynonyms
3744 RankNTypes
3845 ScopedTypeVariables
3946 StandaloneDeriving
47+ TupleSections
4048 TypeFamilies
4149 TypeOperators
4250 UndecidableInstances
51+ UnicodeSyntax
4352 ViewPatterns
53+ ConstraintKinds
4454
4555 build-depends:
4656 aeson
src/Record.hs+1
@@ -32,6 +32,7 @@ import qualified Record.Super as R
3232import Control.Lens ((&), (^.))
3333import Record.Super ((:=))
3434import Record.Tuple
35+import Record.Field
3536import Test.Tasty.HUnit
3637import Unsafe.Coerce
3738
src/Record/Field.hsnew file+7
@@ -0,0 +1,7 @@
1+module Record.Field where
2+
3+import qualified Data.Generics.Labels as GL
4+import qualified Data.Generics.Product.Fields as GL
5+import GHC.TypeLits
6+
7+type Field' (s :: Symbol) a b = (GL.HasField' s a b, GL.Field' s a b)