mirror of
https://github.com/IBM/fp-go.git
synced 2025-11-29 22:38:29 +02:00
13 lines
269 B
Go
13 lines
269 B
Go
|
|
package generic
|
||
|
|
|
||
|
|
import (
|
||
|
|
S "github.com/ibm/fp-go/semigroup"
|
||
|
|
)
|
||
|
|
|
||
|
|
func UnionSemigroup[N ~map[K]V, K comparable, V any](s S.Semigroup[V]) S.Semigroup[N] {
|
||
|
|
union := Union[N, K, V](s)
|
||
|
|
return S.MakeSemigroup(func(first N, second N) N {
|
||
|
|
return union(second)(first)
|
||
|
|
})
|
||
|
|
}
|