pandora-0.2.6: A box of patterns and paradigms

Safe HaskellSafe
LanguageHaskell2010

Pandora.Pattern.Object.Semigroup

Synopsis

Documentation

class Semigroup a where Source #

When providing a new instance, you should ensure it satisfies the one law:
* Associativity: x + (y + z) ≡ (x + y) + z

Methods

(+) :: a -> a -> a infixl 6 Source #

Instances
Semigroup Boolean Source # 
Instance details

Defined in Pandora.Pattern.Object.Setoid

Methods

(+) :: Boolean -> Boolean -> Boolean Source #

Semigroup (Endo a) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Endo

Methods

(+) :: Endo a -> Endo a -> Endo a Source #

Semigroup a => Semigroup (Identity a) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Identity

Methods

(+) :: Identity a -> Identity a -> Identity a Source #

Semigroup a => Semigroup (Maybe a) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Methods

(+) :: Maybe a -> Maybe a -> Maybe a Source #

Semigroup (Stack a) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

Methods

(+) :: Stack a -> Stack a -> Stack a Source #

(Semigroup e, Semigroup a) => Semigroup (Validation e a) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Validation

Methods

(+) :: Validation e a -> Validation e a -> Validation e a Source #

(Semigroup a, Semigroup b) => Semigroup (Product a b) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Product

Methods

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

(Semigroup e, Semigroup a) => Semigroup (Conclusion e a) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Conclusion

Methods

(+) :: Conclusion e a -> Conclusion e a -> Conclusion e a Source #

(Semigroup a, forall b. Semigroup b => Semigroup (t b)) => Semigroup (Twister t a) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Twister

Methods

(+) :: Twister t a -> Twister t a -> Twister t a Source #

Semigroup a => Semigroup (Tagged tag a) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Tagged

Methods

(+) :: Tagged tag a -> Tagged tag a -> Tagged tag a Source #

Semigroup a => Semigroup (Constant a b) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Constant

Methods

(+) :: Constant a b -> Constant a b -> Constant a b Source #