CatsMonadToSemigroup
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.
Value members
Inherited methods
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
- Inherited from:
- Semigroup
Return a combined with itself n times.
Return a combined with itself n times.
Example:
scala> import cats.kernel.instances.int._
scala> import cats.kernel.instances.string._
scala> Semigroup[Int].combineN(1, 10)
res0: Int = 10
scala> Semigroup[String].combineN("ha", 3)
res1: String = hahaha
- Inherited from:
- 0")elseSemigroup.this.repeatedCombineN(a,n)">Semigroup
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.
- Inherited from:
- Semigroup