generic-lens-1.2.0.0: Generically derive traversals, lenses and prisms.

Copyright(C) 2019 Csongor Kiss
LicenseBSD3
MaintainerCsongor Kiss <kiss.csongor.kiss@gmail.com>
Stabilityexperimental
Portabilitynon-portable
Safe HaskellNone
LanguageHaskell2010

Data.Generics.Product.Param

Description

Derive traversals over type parameters

Documentation

newtype Rec (p :: Type) a x Source #

Constructors

Rec (K1 R a x) 

class HasParam (p :: Nat) s t a b | p t a -> s, p s b -> t, p s -> a, p t -> b where Source #

Methods

param :: Applicative g => (a -> g b) -> s -> g t Source #

Instances
(GenericN s, GenericN t, Defined (Rep s) (NoGeneric s ((Text "arising from a generic traversal of the type parameter at position " :<>: QuoteType n) ': ((((Text "of type " :<>: QuoteType a) :<>: Text " in ") :<>: QuoteType s) ': ([] :: [ErrorMessage])))) (), s ~ Infer t (P n b PTag) a, t ~ Infer s (P n a PTag) b, Error (ArgCount s <=? n) n (ArgCount s) s, a ~ (ArgAt s n :: Type), b ~ (ArgAt t n :: Type), GHasParam n (RepN s) (RepN t) a b) => HasParam n s t a b Source # 
Instance details

Defined in Data.Generics.Product.Param

Methods

param :: Applicative g => (a -> g b) -> s -> g t Source #

HasParam p (Void1 a) (Void1 b) a b Source # 
Instance details

Defined in Data.Generics.Product.Param

Methods

param :: Applicative g => (a -> g b) -> Void1 a -> g (Void1 b) Source #