patch-0.0.5.0: Data structures for describing changes to other data structures.
Safe HaskellNone
LanguageHaskell2010

Data.Semigroup.Additive

Description

 
Synopsis

Documentation

class Semigroup q => Additive q Source #

An Additive Semigroup is one where (<>) is commutative

Instances

Instances details
Additive () Source #

Trivial additive semigroup.

Instance details

Defined in Data.Semigroup.Additive

Additive a => Additive (Identity a) Source #

Identity lifts additive semigroups pointwise (at only one point)

Instance details

Defined in Data.Semigroup.Additive

Additive b => Additive (a -> b) Source #

Functions lift additive semigroups pointwise.

Instance details

Defined in Data.Semigroup.Additive

(Additive a, Additive b) => Additive (a, b) Source #

Product additive semigroup. A Pair of additive semigroups gives rise to a additive semigroup

Instance details

Defined in Data.Semigroup.Additive

Additive (Proxy x) Source #

Trivial additive semigroup, Functor style

Instance details

Defined in Data.Semigroup.Additive

Additive a => Additive (Const a x) Source #

Const lifts additive semigroups into a functor.

Instance details

Defined in Data.Semigroup.Additive

(Additive (f a), Additive (g a)) => Additive ((f :*: g) a) Source #

Product of additive semigroups, Functor style.

Instance details

Defined in Data.Semigroup.Additive

Additive (f (g a)) => Additive ((f :.: g) a) Source # 
Instance details

Defined in Data.Semigroup.Additive