| Safe Haskell | None |
|---|
Data.Semigroup.Union
- module Data.Semigroup.Reducer
- class HasUnion f where
- union :: f -> f -> f
- class HasUnion f => HasUnion0 f where
- empty :: f
- newtype Union f = Union {
- getUnion :: f
- class Functor f => HasUnionWith f where
- unionWith :: (a -> a -> a) -> f a -> f a -> f a
- class HasUnionWith f => HasUnionWith0 f where
- emptyWith :: f a
- newtype UnionWith f m = UnionWith {
- getUnionWith :: f m
Documentation
module Data.Semigroup.Reducer
Unions of Containers
class HasUnion f => HasUnion0 f whereSource
Instances
| HasUnion0 IntSet | |
| (HasUnion [a], Eq a) => HasUnion0 [a] | |
| HasUnion (IntMap a) => HasUnion0 (IntMap a) | |
| (HasUnion (Set a), Ord a) => HasUnion0 (Set a) | |
| (HasUnion (HashSet a), Eq a, Hashable a) => HasUnion0 (HashSet a) | |
| (HasUnion (Map k a), Ord k) => HasUnion0 (Map k a) | |
| (HasUnion (HashMap k a), Eq k, Hashable k) => HasUnion0 (HashMap k a) |
Instances
| Functor Union | |
| Foldable Union | |
| Traversable Union | |
| Traversable1 Union | |
| Foldable1 Union | |
| (Semigroup (Union f), HasUnion f) => Reducer f (Union f) | |
| Eq f => Eq (Union f) | |
| (Eq (Union f), Ord f) => Ord (Union f) | |
| Read f => Read (Union f) | |
| Show f => Show (Union f) | |
| HasUnion0 f => Monoid (Union f) | |
| HasUnion f => Semigroup (Union f) |
Unions of Containers of Semigroups
class Functor f => HasUnionWith f whereSource
Polymorphic containers that we can supply an operation to handle unions with
Instances
| HasUnionWith IntMap | |
| (Functor (Map k), Ord k) => HasUnionWith (Map k) |
class HasUnionWith f => HasUnionWith0 f whereSource
Instances
| HasUnionWith0 IntMap | |
| (HasUnionWith (Map k), Ord k) => HasUnionWith0 (Map k) |
Constructors
| UnionWith | |
Fields
| |
Instances
| (Semigroup (UnionWith f m), HasUnionWith f, Semigroup m, Monoid m) => Reducer (f m) (UnionWith f m) | |
| (HasUnionWith0 f, Monoid m) => Monoid (UnionWith f m) | |
| (HasUnionWith f, Semigroup m) => Semigroup (UnionWith f m) |