Data.Semigroup
Description
A semigroup is a binary associative operation.
- class  Semigroup a  where
- (.++.) :: a -> a -> a
 
 - (<++>) :: (Applicative f, Semigroup a) => f a -> f a -> f a
 - newtype  Max a = Max {
- runMax :: a
 
 - newtype  Min a = Min {
- runMin :: a
 
 - newtype  BoundedMax a = BoundedMax {
- runBoundedMax :: Maybe a
 
 - newtype  BoundedMin a = BoundedMin {
- runBoundedMin :: Maybe a
 
 
Documentation
A binary operation that must satisfy associativity. Unlike a Monoid, an identity in not essential.
Instances
| Semigroup Ordering | |
| Semigroup () | |
| Semigroup All | |
| Semigroup Any | |
| Semigroup ByteString | |
| Semigroup IntSet | |
| Semigroup [a] | |
| Semigroup a => Semigroup (IO a) | |
| Semigroup a => Semigroup (Dual a) | |
| Semigroup (Endo a) | |
| Num a => Semigroup (Sum a) | |
| Num a => Semigroup (Product a) | |
| Semigroup (First a) | |
| Semigroup (Last a) | |
| Semigroup a => Semigroup (Maybe a) | |
| Semigroup (Seq a) | |
| Semigroup (IntMap v) | |
| Ord a => Semigroup (Set a) | |
| Monoid a => Semigroup (Identity a) | |
| Ord a => Semigroup (Min a) | |
| Ord a => Semigroup (Max a) | |
| Semigroup b => Semigroup (a -> b) | |
| (Semigroup a, Semigroup b) => Semigroup (a, b) | |
| Ord k => Semigroup (Map k v) | |
| (Semigroup a, Semigroup b, Semigroup c) => Semigroup (a, b, c) | |
| (Semigroup a, Semigroup b, Semigroup c, Semigroup d) => Semigroup (a, b, c, d) | |
| (Semigroup a, Semigroup b, Semigroup c, Semigroup d, Semigroup e) => Semigroup (a, b, c, d, e) | 
(<++>) :: (Applicative f, Semigroup a) => f a -> f a -> f aSource
A binary associative operation lifted into an applicative functor.
newtype BoundedMax a Source
Constructors
| BoundedMax | |
Fields 
  | |
Instances
| Eq a => Eq (BoundedMax a) | |
| Ord a => Ord (BoundedMax a) | |
| Read a => Read (BoundedMax a) | |
| Show a => Show (BoundedMax a) | |
| Ord a => Monoid (BoundedMax a) | 
newtype BoundedMin a Source
Constructors
| BoundedMin | |
Fields 
  | |
Instances
| Eq a => Eq (BoundedMin a) | |
| Ord a => Ord (BoundedMin a) | |
| Read a => Read (BoundedMin a) | |
| Show a => Show (BoundedMin a) | |
| Ord a => Monoid (BoundedMin a) |