generic-deriving-1.14.1: Generic programming library for generalised deriving.
Safe HaskellSafe
LanguageHaskell2010

Generics.Deriving.Functor

Synopsis

Generic Functor class

class GFunctor f where Source #

Minimal complete definition

Nothing

Methods

gmap :: (a -> b) -> f a -> f b Source #

default gmap :: (Generic1 f, GFunctor' (Rep1 f)) => (a -> b) -> f a -> f b Source #

Instances

Instances details
GFunctor [] Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> [a] -> [b] Source #

GFunctor Maybe Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> Maybe a -> Maybe b Source #

GFunctor IO Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> IO a -> IO b Source #

GFunctor Complex Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> Complex a -> Complex b Source #

GFunctor Min Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> Min a -> Min b Source #

GFunctor Max Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> Max a -> Max b Source #

GFunctor First Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> First a -> First b Source #

GFunctor Last Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> Last a -> Last b Source #

GFunctor WrappedMonoid Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> WrappedMonoid a -> WrappedMonoid b Source #

GFunctor ZipList Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> ZipList a -> ZipList b Source #

GFunctor Identity Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> Identity a -> Identity b Source #

GFunctor First Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> First a -> First b Source #

GFunctor Last Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> Last a -> Last b Source #

GFunctor Dual Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> Dual a -> Dual b Source #

GFunctor Sum Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> Sum a -> Sum b Source #

GFunctor Product Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> Product a -> Product b Source #

GFunctor Down Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> Down a -> Down b Source #

GFunctor NonEmpty Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> NonEmpty a -> NonEmpty b Source #

GFunctor (Either a) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a0 -> b) -> Either a a0 -> Either a b Source #

GFunctor ((,) a) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a0 -> b) -> (a, a0) -> (a, b) Source #

GFunctor (Arg a) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a0 -> b) -> Arg a a0 -> Arg a b Source #

GFunctor (Proxy :: Type -> Type) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> Proxy a -> Proxy b Source #

(Generic1 f, GFunctor' (Rep1 f)) => GFunctor (Default1 f) Source # 
Instance details

Defined in Generics.Deriving.Default

Methods

gmap :: (a -> b) -> Default1 f a -> Default1 f b Source #

GFunctor (Const m :: Type -> Type) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> Const m a -> Const m b Source #

GFunctor f => GFunctor (Alt f) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> Alt f a -> Alt f b Source #

GFunctor ((->) r :: Type -> Type) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> (r -> a) -> r -> b Source #

(GFunctor f, GFunctor g) => GFunctor (Product f g) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> Product f g a -> Product f g b Source #

(GFunctor f, GFunctor g) => GFunctor (Sum f g) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap :: (a -> b) -> Sum f g a -> Sum f g b Source #

Default method

gmapdefault :: (Generic1 f, GFunctor' (Rep1 f)) => (a -> b) -> f a -> f b Source #

Internal Functor class

class GFunctor' f where Source #

Methods

gmap' :: (a -> b) -> f a -> f b Source #

Instances

Instances details
GFunctor' Par1 Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap' :: (a -> b) -> Par1 a -> Par1 b Source #

GFunctor' (V1 :: Type -> Type) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap' :: (a -> b) -> V1 a -> V1 b Source #

GFunctor' (U1 :: Type -> Type) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap' :: (a -> b) -> U1 a -> U1 b Source #

GFunctor' (UAddr :: Type -> Type) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap' :: (a -> b) -> UAddr a -> UAddr b Source #

GFunctor' (UChar :: Type -> Type) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap' :: (a -> b) -> UChar a -> UChar b Source #

GFunctor' (UDouble :: Type -> Type) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap' :: (a -> b) -> UDouble a -> UDouble b Source #

GFunctor' (UFloat :: Type -> Type) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap' :: (a -> b) -> UFloat a -> UFloat b Source #

GFunctor' (UInt :: Type -> Type) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap' :: (a -> b) -> UInt a -> UInt b Source #

GFunctor' (UWord :: Type -> Type) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap' :: (a -> b) -> UWord a -> UWord b Source #

GFunctor f => GFunctor' (Rec1 f) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap' :: (a -> b) -> Rec1 f a -> Rec1 f b Source #

GFunctor' (K1 i c :: Type -> Type) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap' :: (a -> b) -> K1 i c a -> K1 i c b Source #

(GFunctor' f, GFunctor' g) => GFunctor' (f :+: g) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap' :: (a -> b) -> (f :+: g) a -> (f :+: g) b Source #

(GFunctor' f, GFunctor' g) => GFunctor' (f :*: g) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap' :: (a -> b) -> (f :*: g) a -> (f :*: g) b Source #

GFunctor' f => GFunctor' (M1 i c f) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap' :: (a -> b) -> M1 i c f a -> M1 i c f b Source #

(GFunctor f, GFunctor' g) => GFunctor' (f :.: g) Source # 
Instance details

Defined in Generics.Deriving.Functor

Methods

gmap' :: (a -> b) -> (f :.: g) a -> (f :.: g) b Source #