Packages

c

monix.eval.instances

CatsMonadToSemigroup

class CatsMonadToSemigroup[F[_], A] extends Semigroup[F[A]]

Given that A has a cats.Monoid implementation, this builds a Semigroup[F[A]] instance for any F[_] data type that implements cats.effect.Sync.

Used for both Task and monix.eval.Coeval.

NOTE: nothing in this implementation is specific to Monix or to cats-effect, but these instances are not provided by default by Cats for any monad, probably because they aren't useful for every monad.

Source
CatsMonadToMonoid.scala
Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. CatsMonadToSemigroup
  2. Semigroup
  3. Serializable
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new CatsMonadToSemigroup()(implicit F: Monad[F], A: Semigroup[A])

Value Members

  1. def combine(x: F[A], y: F[A]): F[A]
    Definition Classes
    CatsMonadToSemigroup → Semigroup
  2. def combineAllOption(as: IterableOnce[F[A]]): Option[F[A]]
    Definition Classes
    Semigroup
  3. def combineN(a: F[A], n: Int): F[A]
    Definition Classes
    Semigroup
  4. def intercalate(middle: F[A]): Semigroup[F[A]]
    Definition Classes
    Semigroup
  5. def reverse: Semigroup[F[A]]
    Definition Classes
    Semigroup