Class MergeMaps<K,V>
- java.lang.Object
-
- com.jnape.palatable.lambda.monoid.builtin.MergeMaps<K,V>
-
- Type Parameters:
K
- The key parameter type of the MapV
- The value parameter type of the Map
- All Implemented Interfaces:
Fn1<Fn0<java.util.Map<K,V>>,Fn1<Semigroup<V>,Fn1<java.util.Map<K,V>,Fn1<java.util.Map<K,V>,java.util.Map<K,V>>>>>
,Fn2<Fn0<java.util.Map<K,V>>,Semigroup<V>,Fn1<java.util.Map<K,V>,Fn1<java.util.Map<K,V>,java.util.Map<K,V>>>>
,Fn3<Fn0<java.util.Map<K,V>>,Semigroup<V>,java.util.Map<K,V>,Fn1<java.util.Map<K,V>,java.util.Map<K,V>>>
,Fn4<Fn0<java.util.Map<K,V>>,Semigroup<V>,java.util.Map<K,V>,java.util.Map<K,V>,java.util.Map<K,V>>
,BiMonoidFactory<Fn0<java.util.Map<K,V>>,Semigroup<V>,java.util.Map<K,V>>
,BiSemigroupFactory<Fn0<java.util.Map<K,V>>,Semigroup<V>,java.util.Map<K,V>>
,Applicative<Fn1<Semigroup<V>,Fn1<java.util.Map<K,V>,Fn1<java.util.Map<K,V>,java.util.Map<K,V>>>>,Fn1<Fn0<java.util.Map<K,V>>,?>>
,Cartesian<Fn0<java.util.Map<K,V>>,Fn1<Semigroup<V>,Fn1<java.util.Map<K,V>,Fn1<java.util.Map<K,V>,java.util.Map<K,V>>>>,Fn1<?,?>>
,Cocartesian<Fn0<java.util.Map<K,V>>,Fn1<Semigroup<V>,Fn1<java.util.Map<K,V>,Fn1<java.util.Map<K,V>,java.util.Map<K,V>>>>,Fn1<?,?>>
,Contravariant<Fn0<java.util.Map<K,V>>,Profunctor<?,Fn1<Semigroup<V>,Fn1<java.util.Map<K,V>,Fn1<java.util.Map<K,V>,java.util.Map<K,V>>>>,Fn1<?,?>>>
,Functor<Fn1<Semigroup<V>,Fn1<java.util.Map<K,V>,Fn1<java.util.Map<K,V>,java.util.Map<K,V>>>>,Fn1<Fn0<java.util.Map<K,V>>,?>>
,Profunctor<Fn0<java.util.Map<K,V>>,Fn1<Semigroup<V>,Fn1<java.util.Map<K,V>,Fn1<java.util.Map<K,V>,java.util.Map<K,V>>>>,Fn1<?,?>>
,Monad<Fn1<Semigroup<V>,Fn1<java.util.Map<K,V>,Fn1<java.util.Map<K,V>,java.util.Map<K,V>>>>,Fn1<Fn0<java.util.Map<K,V>>,?>>
,MonadReader<Fn0<java.util.Map<K,V>>,Fn1<Semigroup<V>,Fn1<java.util.Map<K,V>,Fn1<java.util.Map<K,V>,java.util.Map<K,V>>>>,Fn1<Fn0<java.util.Map<K,V>>,?>>
,MonadRec<Fn1<Semigroup<V>,Fn1<java.util.Map<K,V>,Fn1<java.util.Map<K,V>,java.util.Map<K,V>>>>,Fn1<Fn0<java.util.Map<K,V>>,?>>
,MonadWriter<Fn0<java.util.Map<K,V>>,Fn1<Semigroup<V>,Fn1<java.util.Map<K,V>,Fn1<java.util.Map<K,V>,java.util.Map<K,V>>>>,Fn1<Fn0<java.util.Map<K,V>>,?>>
public final class MergeMaps<K,V> extends java.lang.Object implements BiMonoidFactory<Fn0<java.util.Map<K,V>>,Semigroup<V>,java.util.Map<K,V>>
AMonoid
instance formed byMap.merge(Object, Object, BiFunction)
and a semigroup overV
. Combines together multiple maps using the provided semigroup for key collisions.- See Also:
Monoid
,Map
-
-
Constructor Summary
Constructors Modifier Constructor Description private
MergeMaps()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Monoid<java.util.Map<K,V>>
checkedApply(Fn0<java.util.Map<K,V>> mFn0, Semigroup<V> semigroup)
static <K,V>
MergeMaps<K,V>mergeMaps()
static <K,V>
MonoidFactory<Semigroup<V>,java.util.Map<K,V>>mergeMaps(Fn0<java.util.Map<K,V>> mFn0)
static <K,V>
Monoid<java.util.Map<K,V>>mergeMaps(Fn0<java.util.Map<K,V>> mFn0, Semigroup<V> semigroup)
static <K,V>
Fn1<java.util.Map<K,V>,java.util.Map<K,V>>mergeMaps(Fn0<java.util.Map<K,V>> mFn0, Semigroup<V> semigroup, java.util.Map<K,V> x)
static <K,V>
java.util.Map<K,V>mergeMaps(Fn0<java.util.Map<K,V>> mFn0, Semigroup<V> semigroup, java.util.Map<K,V> x, java.util.Map<K,V> y)
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.jnape.palatable.lambda.functions.specialized.BiMonoidFactory
apply, apply, checkedApply, flip, uncurry
-
Methods inherited from interface com.jnape.palatable.lambda.functions.specialized.BiSemigroupFactory
checkedApply
-
Methods inherited from interface com.jnape.palatable.lambda.functions.Fn1
andThen, carry, cartesian, censor, choose, cocartesian, diMap, diMapR, discardL, flatMap, fmap, lazyZip, listens, local, pure, self, thunk, toFunction, trampolineM, zip, zip
-
Methods inherited from interface com.jnape.palatable.lambda.functions.Fn2
toBiFunction
-
-
-
-
Field Detail
-
INSTANCE
private static final MergeMaps<?,?> INSTANCE
-
-
Method Detail
-
checkedApply
public Monoid<java.util.Map<K,V>> checkedApply(Fn0<java.util.Map<K,V>> mFn0, Semigroup<V> semigroup)
Description copied from interface:Fn3
- Specified by:
checkedApply
in interfaceBiMonoidFactory<Fn0<java.util.Map<K,V>>,Semigroup<V>,java.util.Map<K,V>>
- Specified by:
checkedApply
in interfaceBiSemigroupFactory<Fn0<java.util.Map<K,V>>,Semigroup<V>,java.util.Map<K,V>>
- Specified by:
checkedApply
in interfaceFn2<Fn0<java.util.Map<K,V>>,Semigroup<V>,Fn1<java.util.Map<K,V>,Fn1<java.util.Map<K,V>,java.util.Map<K,V>>>>
- Specified by:
checkedApply
in interfaceFn3<Fn0<java.util.Map<K,V>>,Semigroup<V>,java.util.Map<K,V>,Fn1<java.util.Map<K,V>,java.util.Map<K,V>>>
-
mergeMaps
public static <K,V> MergeMaps<K,V> mergeMaps()
-
mergeMaps
public static <K,V> MonoidFactory<Semigroup<V>,java.util.Map<K,V>> mergeMaps(Fn0<java.util.Map<K,V>> mFn0)
-
mergeMaps
public static <K,V> Monoid<java.util.Map<K,V>> mergeMaps(Fn0<java.util.Map<K,V>> mFn0, Semigroup<V> semigroup)
-
mergeMaps
public static <K,V> Fn1<java.util.Map<K,V>,java.util.Map<K,V>> mergeMaps(Fn0<java.util.Map<K,V>> mFn0, Semigroup<V> semigroup, java.util.Map<K,V> x)
-
-