generic-lens-core-2.2.0.0: Generically derive traversals, lenses and prisms.
Safe HaskellNone
LanguageHaskell2010

Data.Generics.Product.Internal.Fields

Documentation

type Context_ field s t a b = (HasTotalFieldP field (Rep s) ~ 'Just a, HasTotalFieldP field (Rep t) ~ 'Just b, UnifyHead s t, UnifyHead t s) Source #

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 #