Associative operation which combines two values.
Associative operation which combines two values.
Example:
scala> import cats.kernel.instances.string._ scala> import cats.kernel.instances.int._ scala> import cats.kernel.instances.option._ scala> Semigroup[String].combine("Hello ", "World!") res0: String = Hello World! scala> Semigroup[Option[Int]].combine(None, Some(1)) res1: Option[Int] = Some(1)
Return the identity element for this monoid.
Return the identity element for this monoid.
Example:
scala> import cats.kernel.instances.int._ scala> import cats.kernel.instances.string._ scala> Monoid[String].empty res0: String = "" scala> Monoid[Int].empty res1: Int = 0
Find the inverse of a
.
Find the inverse of a
.
combine(a, inverse(a))
= combine(inverse(a), a)
= empty
.
Example:
scala> import cats.kernel.instances.int._ scala> Group[Int].inverse(5) res0: Int = -5
Given a sequence of as
, sum them using the monoid and return the total.
Given a sequence of as
, sum them using the monoid and return the total.
Example:
scala> import cats.kernel.instances.string._ scala> Monoid[String].combineAll(List("One ", "Two ", "Three")) res0: String = One Two Three scala> Monoid[String].combineAll(List.empty) res1: String = ""
Given a sequence of as
, combine them and return the total.
Given a sequence of as
, combine them and return the total.
If the sequence is empty, returns None. Otherwise, returns Some(total).
Example:
scala> import cats.kernel.instances.string._ scala> Semigroup[String].combineAllOption(List("One ", "Two ", "Three")) res0: Option[String] = Some(One Two Three) scala> Semigroup[String].combineAllOption(List.empty) res1: Option[String] = None
Return a
appended to itself n
times.
Tests if a
is the identity.
Tests if a
is the identity.
Example:
scala> import cats.kernel.instances.string._ scala> Monoid[String].isEmpty("") res0: Boolean = true scala> Monoid[String].isEmpty("something") res1: Boolean = false
Remove the element b
from a
.
Remove the element b
from a
.
Equivalent to combine(a, inverse(b))
Example:
scala> import cats.kernel.instances.int._ scala> Group[Int].remove(5, 2) res0: Int = 3
Return a
combined with itself more than once.
Return a
combined with itself more than once.
An commutative group (also known as an abelian group) is a group whose combine operation is commutative.