generic-deriving-1.12.2: Generic programming library for generalised deriving.

Safe HaskellTrustworthy

Generics.Deriving.Semigroup

Contents

Synopsis

Generic semigroup class

class GSemigroup a where

Methods

gsappend :: a -> a -> a

gstimes :: Integral b => b -> a -> a

Instances

GSemigroup Ordering 
GSemigroup () 
GSemigroup Any 
GSemigroup All 
GSemigroup [a] 
GSemigroup a => GSemigroup (Maybe a) 
Num a => GSemigroup (Sum a) 
Num a => GSemigroup (Product a) 
GSemigroup (Endo a) 
GSemigroup a => GSemigroup (Dual a) 
GSemigroup (Last a) 
GSemigroup (First a) 
GSemigroup a => GSemigroup (Down a) 
GSemigroup b => GSemigroup (a -> b) 
GSemigroup (Either a b) 
(GSemigroup a, GSemigroup b) => GSemigroup (a, b) 
GSemigroup a => GSemigroup (Const a b) 
(GSemigroup a, GSemigroup b, GSemigroup c) => GSemigroup (a, b, c) 
(GSemigroup a, GSemigroup b, GSemigroup c, GSemigroup d) => GSemigroup (a, b, c, d) 
(GSemigroup a, GSemigroup b, GSemigroup c, GSemigroup d, GSemigroup e) => GSemigroup (a, b, c, d, e) 
(GSemigroup a, GSemigroup b, GSemigroup c, GSemigroup d, GSemigroup e, GSemigroup f) => GSemigroup (a, b, c, d, e, f) 
(GSemigroup a, GSemigroup b, GSemigroup c, GSemigroup d, GSemigroup e, GSemigroup f, GSemigroup g) => GSemigroup (a, b, c, d, e, f, g) 
(GSemigroup a, GSemigroup b, GSemigroup c, GSemigroup d, GSemigroup e, GSemigroup f, GSemigroup g, GSemigroup h) => GSemigroup (a, b, c, d, e, f, g, h) 

Default definition

gsappenddefault :: (Generic a, GSemigroup' (Rep a)) => a -> a -> a

Internal semigroup class

class GSemigroup' f where

Methods

gsappend' :: f x -> f x -> f x

Instances

GSemigroup' * U1 
GSemigroup a => GSemigroup' * (K1 i a) 
(GSemigroup' * f, GSemigroup' * g) => GSemigroup' * (:*: f g) 
GSemigroup' * f => GSemigroup' * (M1 i c f)