Packages

trait Semigroup[T] extends algebra.Semigroup[T] with AdditiveSemigroup[T]

A semigroup is any type T with an associative operation (plus):

a plus (b plus c) = (a plus b) plus c

Example instances:

  • Semigroup[Int]: plus Int#+
  • Semigroup[List[T]]: plus is List#++
Annotations
@implicitNotFound()
Linear Supertypes
AdditiveSemigroup[T], cats.kernel.Semigroup[T], Serializable, AnyRef, Any
Known Subclasses
AbstractGroup, AbstractMonoid, AbstractRing, AbstractSemigroup, AdjoinedUnitRing, AffineFunctionMonoid, AndValMonoid, ApplicativeGroup, ApplicativeMonoid, ApplicativeRing, ApplicativeSemigroup, ArrayGroup, ArrayMonoid, AveragedGroup, BatchedMonoid, BatchedSemigroup, BigDecimalRing, BigIntRing, BloomFilterMonoid, BooleanRing, CMSMonoid, ConstantGroup, ConstantRing, CorrelationMonoid, DecayedValueMonoid, DoubleRing, EitherMonoid, EitherSemigroup, EventuallyGroup, EventuallyMonoid, EventuallyRing, EventuallySemigroup, FloatRing, FromAlgebraGroup, FromAlgebraMonoid, FromAlgebraRing, FromAlgebraSemigroup, Function1Monoid, GenericMapMonoid, Group, HashingTrickMonoid, HyperLogLogMonoid, HyperLogLogSeriesMonoid, IndexedSeqGroup, IndexedSeqMonoid, IndexedSeqRing, IndexedSeqSemigroup, IntRing, InvariantGroup, InvariantMonoid, InvariantRing, InvariantSemigroup, JBoolRing, JDoubleRing, JFloatRing, JIntRing, JListMonoid, JLongRing, JMapMonoid, JShortRing, ListMonoid, LongRing, MapGroup, MapMonoid, MapRing, MinHasher, MinHasher16, MinHasher32, MomentsMonoid, Monoid, MonoidCombinator, NullGroup, NumericRing, OptionGroup, OptionMonoid, OrValMonoid, Product10Group, Product10Monoid, Product10Ring, Product10Semigroup, Product11Group, Product11Monoid, Product11Ring, Product11Semigroup, Product12Group, Product12Monoid, Product12Ring, Product12Semigroup, Product13Group, Product13Monoid, Product13Ring, Product13Semigroup, Product14Group, Product14Monoid, Product14Ring, Product14Semigroup, Product15Group, Product15Monoid, Product15Ring, Product15Semigroup, Product16Group, Product16Monoid, Product16Ring, Product16Semigroup, Product17Group, Product17Monoid, Product17Ring, Product17Semigroup, Product18Group, Product18Monoid, Product18Ring, Product18Semigroup, Product19Group, Product19Monoid, Product19Ring, Product19Semigroup, Product20Group, Product20Monoid, Product20Ring, Product20Semigroup, Product21Group, Product21Monoid, Product21Ring, Product21Semigroup, Product22Group, Product22Monoid, Product22Ring, Product22Semigroup, Product2Group, Product2Monoid, Product2Ring, Product2Semigroup, Product3Group, Product3Monoid, Product3Ring, Product3Semigroup, Product4Group, Product4Monoid, Product4Ring, Product4Semigroup, Product5Group, Product5Monoid, Product5Ring, Product5Semigroup, Product6Group, Product6Monoid, Product6Ring, Product6Semigroup, Product7Group, Product7Monoid, Product7Ring, Product7Semigroup, Product8Group, Product8Monoid, Product8Ring, Product8Semigroup, Product9Group, Product9Monoid, Product9Ring, Product9Semigroup, QTreeSemigroup, ResetStateMonoid, RightFolded2Monoid, Ring, SGDMonoid, ScMapGroup, ScMapMonoid, ScMapRing, ScopedTopNCMSMonoid, SemigroupCombinator, SeqMonoid, SetMonoid, ShortRing, SketchMapMonoid, SpaceSaverSemigroup, StringMonoid, TopCMSMonoid, TopKMonoid, TopNCMSMonoid, TopPctCMSMonoid, Tuple10Group, Tuple10Monoid, Tuple10Ring, Tuple10Semigroup, Tuple11Group, Tuple11Monoid, Tuple11Ring, Tuple11Semigroup, Tuple12Group, Tuple12Monoid, Tuple12Ring, Tuple12Semigroup, Tuple13Group, Tuple13Monoid, Tuple13Ring, Tuple13Semigroup, Tuple14Group, Tuple14Monoid, Tuple14Ring, Tuple14Semigroup, Tuple15Group, Tuple15Monoid, Tuple15Ring, Tuple15Semigroup, Tuple16Group, Tuple16Monoid, Tuple16Ring, Tuple16Semigroup, Tuple17Group, Tuple17Monoid, Tuple17Ring, Tuple17Semigroup, Tuple18Group, Tuple18Monoid, Tuple18Ring, Tuple18Semigroup, Tuple19Group, Tuple19Monoid, Tuple19Ring, Tuple19Semigroup, Tuple20Group, Tuple20Monoid, Tuple20Ring, Tuple20Semigroup, Tuple21Group, Tuple21Monoid, Tuple21Ring, Tuple21Semigroup, Tuple22Group, Tuple22Monoid, Tuple22Ring, Tuple22Semigroup, Tuple2Group, Tuple2Monoid, Tuple2Ring, Tuple2Semigroup, Tuple3Group, Tuple3Monoid, Tuple3Ring, Tuple3Semigroup, Tuple4Group, Tuple4Monoid, Tuple4Ring, Tuple4Semigroup, Tuple5Group, Tuple5Monoid, Tuple5Ring, Tuple5Semigroup, Tuple6Group, Tuple6Monoid, Tuple6Ring, Tuple6Semigroup, Tuple7Group, Tuple7Monoid, Tuple7Ring, Tuple7Semigroup, Tuple8Group, Tuple8Monoid, Tuple8Ring, Tuple8Semigroup, Tuple9Group, Tuple9Monoid, Tuple9Ring, Tuple9Semigroup, UnitGroup, UnsafeFromAlgebraRig, UnsafeFromAlgebraRng, WindowMonoid, WindowMonoidFromGroup, WindowMonoidFromMonoid, PriorityQueueMonoid, GaussianDistributionMonoid, StatisticsGroup, StatisticsMonoid, StatisticsRing, StatisticsSemigroup, MomentsGroup
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Semigroup
  2. AdditiveSemigroup
  3. Semigroup
  4. Serializable
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Abstract Value Members

  1. abstract def plus(x: T, y: T): T
    Definition Classes
    AdditiveSemigroup

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def additive: algebra.Semigroup[T]
    Definition Classes
    Semigroup → AdditiveSemigroup
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  7. def combine(l: T, r: T): T
    Definition Classes
    Semigroup → Semigroup
  8. def combineAllOption(iter: TraversableOnce[T]): Option[T]
    Definition Classes
    Semigroup → Semigroup
  9. def combineN(a: T, n: Int): T
    Definition Classes
    Semigroup
  10. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  11. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  12. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  13. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  14. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  15. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  16. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  17. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  18. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  19. def positiveSumN(a: T, n: Int): T
    Attributes
    protected[this]
    Definition Classes
    AdditiveSemigroup
  20. def repeatedCombineN(a: T, n: Int): T
    Attributes
    protected[this]
    Definition Classes
    Semigroup
  21. def sumN(a: T, n: Int): T
    Definition Classes
    AdditiveSemigroup
  22. def sumOption(iter: TraversableOnce[T]): Option[T]

    Returns an instance of T calculated by summing all instances in iter in one pass.

    Returns an instance of T calculated by summing all instances in iter in one pass. Returns None if iter is empty, else Some[T].

    iter

    instances of T to be combined

    returns

    None if iter is empty, else an option value containing the summed T

    Note

    Override if there is a faster way to compute this sum than iter.reduceLeftOption using plus.

  23. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  24. def toString(): String
    Definition Classes
    AnyRef → Any
  25. def trySum(iter: TraversableOnce[T]): Option[T]
    Definition Classes
    Semigroup → AdditiveSemigroup
  26. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  27. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  28. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from AdditiveSemigroup[T]

Inherited from cats.kernel.Semigroup[T]

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped