| Safe Haskell | Safe |
|---|---|
| Language | Haskell2010 |
Precursor.Algebra.Semigroup
- class Semigroup a where
- (<>) :: Semigroup a => a -> a -> a
- sconcat :: Semigroup a => NonEmpty a -> a
- stimesMonoid :: (Integral b, Monoid a) => b -> a -> a
- stimesIdempotent :: Integral b => b -> a -> a
- stimesIdempotentMonoid :: (Integral b, Monoid a) => b -> a -> a
- mtimesDefault :: (Integral b, Monoid a) => b -> a -> a
- newtype First a :: * -> * = First {
- getFirst :: a
- newtype Last a :: * -> * = Last {
- getLast :: a
- newtype Min a :: * -> * = Min {
- getMin :: a
- newtype Max a :: * -> * = Max {
- getMax :: a
- newtype WrappedMonoid m :: * -> * = WrapMonoid {
- unwrapMonoid :: m
Semigroup typeclass
The class of semigroups (types with an associative binary operation).
Since: 4.9.0.0
Methods
(<>) :: a -> a -> a infixr 6 #
An associative operation.
(a<>b)<>c = a<>(b<>c)
If a is also a Monoid we further require
(<>) =mappend
Reduce a non-empty list with <>
The default definition should be sufficient, but this can be overridden for efficiency.
Instances
sconcat :: Semigroup a => NonEmpty a -> a #
Reduce a non-empty list with <>
The default definition should be sufficient, but this can be overridden for efficiency.
stimesMonoid :: (Integral b, Monoid a) => b -> a -> a #
stimesIdempotent :: Integral b => b -> a -> a #
stimesIdempotentMonoid :: (Integral b, Monoid a) => b -> a -> a #
mtimesDefault :: (Integral b, Monoid a) => b -> a -> a #
Use to get the behavior of
Option (First a)First from Data.Monoid.
Instances
| Monad First | |
| Functor First | |
| MonadFix First | |
| Applicative First | |
| Foldable First | |
| Traversable First | |
| Generic1 First | |
| Bounded a => Bounded (First a) | |
| Enum a => Enum (First a) | |
| Eq a => Eq (First a) | |
| Data a => Data (First a) | |
| Ord a => Ord (First a) | |
| Read a => Read (First a) | |
| Show a => Show (First a) | |
| Generic (First a) | |
| Semigroup (First a) | |
| type Rep1 First | |
| type Rep (First a) | |
Use to get the behavior of
Option (Last a)Last from Data.Monoid
Instances
| Monad Last | |
| Functor Last | |
| MonadFix Last | |
| Applicative Last | |
| Foldable Last | |
| Traversable Last | |
| Generic1 Last | |
| Bounded a => Bounded (Last a) | |
| Enum a => Enum (Last a) | |
| Eq a => Eq (Last a) | |
| Data a => Data (Last a) | |
| Ord a => Ord (Last a) | |
| Read a => Read (Last a) | |
| Show a => Show (Last a) | |
| Generic (Last a) | |
| Semigroup (Last a) | |
| type Rep1 Last | |
| type Rep (Last a) | |
Ord wrappers
Instances
| Monad Min | |
| Functor Min | |
| MonadFix Min | |
| Applicative Min | |
| Foldable Min | |
| Traversable Min | |
| Generic1 Min | |
| Bounded a => Bounded (Min a) | |
| Enum a => Enum (Min a) | |
| Eq a => Eq (Min a) | |
| Data a => Data (Min a) | |
| Num a => Num (Min a) | |
| Ord a => Ord (Min a) | |
| Read a => Read (Min a) | |
| Show a => Show (Min a) | |
| Generic (Min a) | |
| Ord a => Semigroup (Min a) | |
| (Ord a, Bounded a) => Monoid (Min a) | |
| type Rep1 Min | |
| type Rep (Min a) | |
Instances
| Monad Max | |
| Functor Max | |
| MonadFix Max | |
| Applicative Max | |
| Foldable Max | |
| Traversable Max | |
| Generic1 Max | |
| Bounded a => Bounded (Max a) | |
| Enum a => Enum (Max a) | |
| Eq a => Eq (Max a) | |
| Data a => Data (Max a) | |
| Num a => Num (Max a) | |
| Ord a => Ord (Max a) | |
| Read a => Read (Max a) | |
| Show a => Show (Max a) | |
| Generic (Max a) | |
| Ord a => Semigroup (Max a) | |
| (Ord a, Bounded a) => Monoid (Max a) | |
| type Rep1 Max | |
| type Rep (Max a) | |
Backwards compatibility
newtype WrappedMonoid m :: * -> * #
Provide a Semigroup for an arbitrary Monoid.
Constructors
| WrapMonoid | |
Fields
| |
Instances
| Generic1 WrappedMonoid | |
| Bounded a => Bounded (WrappedMonoid a) | |
| Enum a => Enum (WrappedMonoid a) | |
| Eq m => Eq (WrappedMonoid m) | |
| Data m => Data (WrappedMonoid m) | |
| Ord m => Ord (WrappedMonoid m) | |
| Read m => Read (WrappedMonoid m) | |
| Show m => Show (WrappedMonoid m) | |
| Generic (WrappedMonoid m) | |
| Monoid m => Semigroup (WrappedMonoid m) | |
| Monoid m => Monoid (WrappedMonoid m) | |
| type Rep1 WrappedMonoid | |
| type Rep (WrappedMonoid m) | |