commutative-0.0.2: Commutative binary operations.

Safe HaskellNone
LanguageHaskell2010

Data.Mergeable

Documentation

class Mergeable t where Source #

Minimal complete definition

Nothing

Methods

mergeMap :: CommutativeId m => (a -> m) -> t a -> m Source #

merge :: (a -> b -> b) -> b -> t a -> b Source #

Instances
Mergeable [] Source # 
Instance details

Defined in Data.Mergeable

Methods

mergeMap :: CommutativeId m => (a -> m) -> [a] -> m Source #

merge :: (a -> b -> b) -> b -> [a] -> b Source #

Mergeable Vector Source # 
Instance details

Defined in Data.Mergeable

Methods

mergeMap :: CommutativeId m => (a -> m) -> Vector a -> m Source #

merge :: (a -> b -> b) -> b -> Vector a -> b Source #

class Functor t => Mergeable1 t where Source #

Minimal complete definition

Nothing

Methods

mergeMap1 :: Commutative m => (a -> m) -> t a -> m Source #

merge1 :: Commutative m => t m -> m Source #

Instances
Mergeable1 NonEmpty Source # 
Instance details

Defined in Data.Mergeable

Methods

mergeMap1 :: Commutative m => (a -> m) -> NonEmpty a -> m Source #

merge1 :: Commutative m => NonEmpty m -> m Source #