# Semigroup_DiscretePath

given Semigroup_DiscretePath[V, F]: Semigroup[DiscretePath[V, F]]

The default semigroup instance that concats paths by rebasing.

Notice that this structure

• is associative
• is only unital if you identify `x concatRebase zero` with `x`, where the former has an extra point.
• does not admit inverses. Concatenating a reverse path does not erase the original path.

## Value members

### Concrete methods

override
def combine(x: DiscretePath[V, F], y: DiscretePath[V, F]): DiscretePath[V, F]
Definition Classes
Semigroup

### Inherited methods

def combineAllOption(as: IterableOnce[DiscretePath[V, F]]): Option[DiscretePath[V, F]]

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
def combineN(a: DiscretePath[V, F], n: Int): DiscretePath[V, F]

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
Semigroup
def intercalate(middle: DiscretePath[V, F]): Semigroup[DiscretePath[V, F]]

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
def reverse: Semigroup[DiscretePath[V, F]]

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)

Inherited from
Semigroup