| Safe Haskell | None |
|---|
Data.Monoid.Null
Description
This module defines the MonoidNull class and some of its instances.
- class Monoid m => MonoidNull m where
- class MonoidNull m => PositiveMonoid m
Documentation
class Monoid m => MonoidNull m whereSource
Extension of Monoid that allows testing a value for equality with mempty. The following law must hold:
null x == (x == mempty)
Furthermore, the performance of this method should be constant, i.e., independent of the length of its argument.
Instances
| MonoidNull Ordering | |
| MonoidNull () | |
| MonoidNull All | |
| MonoidNull Any | |
| MonoidNull ByteString | |
| MonoidNull ByteString | |
| MonoidNull IntSet | |
| MonoidNull Text | |
| MonoidNull Text | |
| MonoidNull ByteStringUTF8 | |
| MonoidNull [x] | |
| MonoidNull a => MonoidNull (Dual a) | |
| (Num a, Eq a) => MonoidNull (Sum a) | |
| (Num a, Eq a) => MonoidNull (Product a) | |
| MonoidNull (First a) | |
| MonoidNull (Last a) | |
| Monoid a => MonoidNull (Maybe a) | |
| MonoidNull (Seq a) | |
| MonoidNull (IntMap v) | |
| Ord a => MonoidNull (Set a) | |
| MonoidNull (Vector a) | |
| MonoidNull (Concat a) | |
| StableFactorialMonoid a => MonoidNull (Measured a) | |
| (MonoidNull a, MonoidNull b) => MonoidNull (a, b) | |
| Ord k => MonoidNull (Map k v) |
class MonoidNull m => PositiveMonoid m Source
Subclass of Monoid for types whose values have no inverse, with the exception of mempty. More formally, the
class instances must satisfy the following law:
null (x <> y) == (null x && null y)
Instances
| PositiveMonoid Ordering | |
| PositiveMonoid () | |
| PositiveMonoid All | |
| PositiveMonoid Any | |
| PositiveMonoid ByteString | |
| PositiveMonoid ByteString | |
| PositiveMonoid IntSet | |
| PositiveMonoid Text | |
| PositiveMonoid Text | |
| PositiveMonoid ByteStringUTF8 | |
| PositiveMonoid [x] | |
| PositiveMonoid a => PositiveMonoid (Dual a) | |
| PositiveMonoid (First a) | |
| PositiveMonoid (Last a) | |
| Monoid a => PositiveMonoid (Maybe a) | |
| PositiveMonoid (Seq a) | |
| PositiveMonoid (IntMap v) | |
| Ord a => PositiveMonoid (Set a) | |
| PositiveMonoid (Vector a) | |
| PositiveMonoid (Concat a) | |
| StableFactorialMonoid a => PositiveMonoid (Measured a) | |
| Ord k => PositiveMonoid (Map k v) |