| Safe Haskell | Safe |
|---|---|
| Language | Haskell2010 |
Pandora.Pattern.Object.Monoid
Documentation
class Semigroup a => Monoid a where Source #
When providing a new instance, you should ensure it satisfies the two laws: * Right absorption: zero + x ≡ x * Left absorption: x + zero ≡ x
Instances
| Monoid (Endo a) Source # | |
Defined in Pandora.Paradigm.Basis.Endo | |
| Semigroup a => Monoid (Maybe a) Source # | |
Defined in Pandora.Paradigm.Basis.Maybe | |
| Monoid a => Monoid (Identity a) Source # | |
Defined in Pandora.Paradigm.Basis.Identity | |
| (Monoid a, forall b. Semigroup b => Monoid (t b)) => Monoid (Twister t a) Source # | |
Defined in Pandora.Paradigm.Basis.Twister | |
| (Monoid a, Monoid b) => Monoid (Product a b) Source # | |
Defined in Pandora.Paradigm.Basis.Product | |
| Monoid a => Monoid (Tagged tag a) Source # | |
Defined in Pandora.Paradigm.Basis.Tagged | |
| Monoid a => Monoid (Constant a b) Source # | |
Defined in Pandora.Paradigm.Basis.Constant | |
| (forall (u' :: k2 -> Type). Monoid ((u' :.: t u') a)) => Monoid (Y t u a) Source # | |
Defined in Pandora.Paradigm.Junction.Transformer | |
| Monoid ((u :.: t) a) => Monoid (T t u a) Source # | |
Defined in Pandora.Paradigm.Junction.Transformer | |