generic-lens-core-2.2.1.0: Generically derive traversals, lenses and prisms.
Safe Haskell None
Language Haskell2010

Data.Generics.Product.Internal.Fields

Documentation

type Context' field s a = ( Generic s, ErrorUnless field s ( CollectField field ( Rep s)), GLens' (HasTotalFieldPSym field) ( Rep s) a, Defined ( Rep s) ( NoGeneric s '[((' Text "arising from a generic lens focusing on the " :<>: QuoteType field) :<>: ' Text " field of type ") :<>: QuoteType a, ' Text "in " :<>: QuoteType s]) (() :: Constraint )) Source #

type Context0 field s t a b = ( Generic s, Generic t, GLens (HasTotalFieldPSym field) ( Rep s) ( Rep t) a b, ErrorUnless field s ( CollectField field ( Rep s)), Defined ( Rep s) ( NoGeneric s '[((' Text "arising from a generic lens focusing on the " :<>: QuoteType field) :<>: ' Text " field of type ") :<>: QuoteType a, ' Text "in " :<>: QuoteType s]) (() :: Constraint )) Source #

class Context (field :: Symbol ) s t a b | s field -> a, t field -> b, s field b -> t, t field a -> s Source #

Instances

Instances details
( HasTotalFieldP field ( Rep s) ~ ' Just a, HasTotalFieldP field ( Rep t) ~ ' Just b, HasTotalFieldP field ( Rep ( Indexed s)) ~ ' Just a', HasTotalFieldP field ( Rep ( Indexed t)) ~ ' Just b', t ~ Infer s a' b, s ~ Infer t b' a) => Context field (s :: Type ) (t :: Type ) (a :: Type ) (b :: Type ) Source #
Instance details

Defined in Data.Generics.Product.Internal.Fields

derived :: forall field s t a b. Context0 field s t a b => Lens s t a b Source #