Trait/Object

spire.algebra

Monoid

Related Docs: object Monoid | package algebra

Permalink

trait Monoid[A] extends Semigroup[A]

A monoid is a semigroup with an identity. A monoid is a specialization of a semigroup, so its operation must be associative. Additionally, op(x, id) == op(id, x) == x. For example, if we have Monoid[String], with op as string concatenation, then id = "".

Linear Supertypes
Semigroup[A], Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Monoid
  2. Semigroup
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def getClass(): Class[_]

    Permalink
    Definition Classes
    Any
  2. abstract def id: A

    Permalink

    Return the identity element for this monoid.

  3. abstract def op(x: A, y: A): A

    Permalink
    Definition Classes
    Semigroup

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def combine(as: TraversableOnce[A]): A

    Permalink

    Given a sequence of as, combine them using the monoid and return the total.

  6. def combineOption(as: TraversableOnce[A]): Option[A]

    Permalink

    Given a sequence of as, combine them using the semigroup and return the total.

    Given a sequence of as, combine them using the semigroup and return the total.

    If the sequence is empty, returns None. Otherwise, returns Some(total).

    Definition Classes
    Semigroup
  7. def combinen(a: A, n: Int): A

    Permalink

    Return a combined with itself n times.

    Return a combined with itself n times.

    Definition Classes
    MonoidSemigroup
  8. def combinenAboveOne(a: A, n: Int): A

    Permalink
    Attributes
    protected
    Definition Classes
    Semigroup
  9. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    Any
  10. def hashCode(): Int

    Permalink
    Definition Classes
    Any
  11. def isId(a: A)(implicit ev: Eq[A]): Boolean

    Permalink

    Tests if a is the identity.

  12. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  13. def toString(): String

    Permalink
    Definition Classes
    Any

Inherited from Semigroup[A]

Inherited from Any

Ungrouped