trait CommutativeMonoid[A] extends Monoid[A] with CommutativeSemigroup[A]
CommutativeMonoid represents a commutative monoid.
A monoid is commutative if for all x and y, x |+| y === y |+| x.
- Self Type
- CommutativeMonoid[A]
- Source
- CommutativeMonoid.scala
- Alphabetic
- By Inheritance
- CommutativeMonoid
- CommutativeSemigroup
- Monoid
- Semigroup
- Serializable
- Serializable
- Any
- Hide All
- Show All
- Public
- All
Abstract Value Members
-
abstract
def
combine(x: A, y: A): A
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)
- Definition Classes
- Semigroup
-
abstract
def
empty: A
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
- Definition Classes
- Monoid
-
abstract
def
getClass(): Class[_]
- Definition Classes
- Any
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- Any
-
final
def
##(): Int
- Definition Classes
- Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
combineAll(as: IterableOnce[A]): A
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 = ""
- Definition Classes
- Monoid
-
def
combineAllOption(as: IterableOnce[A]): Option[A]
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
-
def
combineN(a: A, n: Int): A
Return
a
appended to itselfn
times. -
def
equals(arg0: Any): Boolean
- Definition Classes
- Any
-
def
hashCode(): Int
- Definition Classes
- Any
-
def
intercalate(middle: A): CommutativeSemigroup[A]
Between each pair of elements insert middle This name matches the term used in Foldable and Reducible and a similar Haskell function.
Between each pair of elements insert middle This name matches the term used in Foldable and Reducible and a similar Haskell function.
- Definition Classes
- CommutativeSemigroup → Semigroup
-
def
isEmpty(a: A)(implicit ev: Eq[A]): Boolean
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
- Definition Classes
- Monoid
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
repeatedCombineN(a: A, n: Int): A
Return
a
combined with itself more than once.Return
a
combined with itself more than once.- Attributes
- protected[this]
- Definition Classes
- Semigroup
-
def
reverse: CommutativeMonoid[A]
return a semigroup that reverses the order so combine(a, b) == reverse.combine(b, a)
return a semigroup that reverses the order so combine(a, b) == reverse.combine(b, a)
- Definition Classes
- CommutativeMonoid → CommutativeSemigroup → Monoid → Semigroup
-
def
toString(): String
- Definition Classes
- Any