trait SemiGroup[a: Type]
A trait for types that form a semigroup.
instance SemiGroup[Chain[a]]
instance SemiGroup[DelayList[a]]
instance SemiGroup[PrecedenceGraph]
instance SemiGroup[Identity[a]] with SemiGroup[a]
instance SemiGroup[List[a]]
instance SemiGroup[Map[k, v]] with Order[k], SemiGroup[v]
instance SemiGroup[MultiMap[k, v]] with Order[k], Order[v]
instance SemiGroup[Nec[a]]
instance SemiGroup[Nel[a]]
instance SemiGroup[Option[a]] with SemiGroup[a]
instance SemiGroup[Unit]
instance SemiGroup[Int8]
instance SemiGroup[Int16]
instance SemiGroup[Int32]
instance SemiGroup[Int64]
instance SemiGroup[BigInt]
instance SemiGroup[Float32]
instance SemiGroup[Float64]
instance SemiGroup[BigDecimal]
instance SemiGroup[String]
instance SemiGroup[(a1, a2)] with SemiGroup[a1], SemiGroup[a2]
instance SemiGroup[(a1, a2, a3)] with SemiGroup[a1], SemiGroup[a2], SemiGroup[a3]
instance SemiGroup[(a1, a2, a3, a4)] with SemiGroup[a1], SemiGroup[a2], SemiGroup[a3], SemiGroup[a4]
instance SemiGroup[(a1, a2, a3, a4, a5)] with SemiGroup[a1], SemiGroup[a2], SemiGroup[a3], SemiGroup[a4], SemiGroup[a5]
instance SemiGroup[(a1, a2, a3, a4, a5, a6)] with SemiGroup[a1], SemiGroup[a2], SemiGroup[a3], SemiGroup[a4], SemiGroup[a5], SemiGroup[a6]
instance SemiGroup[(a1, a2, a3, a4, a5, a6, a7)] with SemiGroup[a1], SemiGroup[a2], SemiGroup[a3], SemiGroup[a4], SemiGroup[a5], SemiGroup[a6], SemiGroup[a7]
instance SemiGroup[(a1, a2, a3, a4, a5, a6, a7, a8)] with SemiGroup[a1], SemiGroup[a2], SemiGroup[a3], SemiGroup[a4], SemiGroup[a5], SemiGroup[a6], SemiGroup[a7], SemiGroup[a8]
instance SemiGroup[(a1, a2, a3, a4, a5, a6, a7, a8, a9)] with SemiGroup[a1], SemiGroup[a2], SemiGroup[a3], SemiGroup[a4], SemiGroup[a5], SemiGroup[a6], SemiGroup[a7], SemiGroup[a8], SemiGroup[a9]
instance SemiGroup[(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10)] with SemiGroup[a1], SemiGroup[a2], SemiGroup[a3], SemiGroup[a4], SemiGroup[a5], SemiGroup[a6], SemiGroup[a7], SemiGroup[a8], SemiGroup[a9], SemiGroup[a10]
instance SemiGroup[Any]
instance SemiGroup[All]
instance SemiGroup[Set[a]] with Order[a]
instance SemiGroup[Validation[e, t]] with SemiGroup[t]
instance SemiGroup[Vector[a]]
def combine(x: a, y: a): a with SemiGroup[a]
An associative binary operation on a.
a
def combineN(x: a, n: Int32): a with SemiGroup[a]
Returns x combined with itself n times.
x
n