Copyright | (C) 2020 Csongor Kiss |
---|---|
License | BSD3 |
Maintainer | Csongor Kiss <kiss.csongor.kiss@gmail.com> |
Stability | experimental |
Portability | non-portable |
Safe Haskell | None |
Language | Haskell2010 |
Derive record field getters and setters generically.
Documentation
class GLens (pred :: Pred) (s :: Type -> Type ) (t :: Type -> Type ) a b | s pred -> a, t pred -> b where Source #
Instances
GLens pred ( K1 r a :: Type -> Type ) ( K1 r b :: Type -> Type ) a b Source # | |
( GLens pred l l' a b, GLens pred r r' a b) => GLens pred (l :+: r) (l' :+: r') a b Source # | |
GProductLens ( Eval pred l) pred l r l' r' a b => GLens pred (l :*: r) (l' :*: r') a b Source # | |
GLens pred f g a b => GLens pred ( M1 m meta f) ( M1 m meta g) a b Source # | |