trait Semilattice[A] extends Band[A] with CommutativeSemigroup[A]
Semilattices are commutative semigroups whose operation (i.e. combine) is also idempotent.
- Self Type
- Semilattice[A]
- Source
- Semilattice.scala
- Alphabetic
- By Inheritance
- Semilattice
- CommutativeSemigroup
- Band
- Semigroup
- Serializable
- Serializable
- Any
- Hide All
- Show All
- Public
- All
Abstract Value Members
-
abstract
def
combine(x: A, y: A): A
Associative operation which combines two values.
Associative operation which combines two values.
Example:
scala> import cats.kernel.instances.string._ scala> import cats.kernel.instances.int._ scala> import cats.kernel.instances.option._ scala> Semigroup[String].combine("Hello ", "World!") res0: String = Hello World! scala> Semigroup[Option[Int]].combine(None, Some(1)) res1: Option[Int] = Some(1)
- Definition Classes
- Semigroup
-
abstract
def
getClass(): Class[_]
- Definition Classes
- Any
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- Any
-
final
def
##(): Int
- Definition Classes
- Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
asJoinPartialOrder(implicit ev: Eq[A]): PartialOrder[A]
Given Eq[A], return a PartialOrder[A] using the
combine
operator to determine the partial ordering.Given Eq[A], return a PartialOrder[A] using the
combine
operator to determine the partial ordering. This method assumescombine
functions asjoin
(that is, as an upper bound).This method returns:
0.0 if x = y -1.0 if y = combine(x, y) 1.0 if x = combine(x, y) NaN otherwise
-
def
asMeetPartialOrder(implicit ev: Eq[A]): PartialOrder[A]
Given Eq[A], return a PartialOrder[A] using the
combine
operator to determine the partial ordering.Given Eq[A], return a PartialOrder[A] using the
combine
operator to determine the partial ordering. This method assumescombine
functions asmeet
(that is, as a lower bound).This method returns:
0.0 if x = y -1.0 if x = combine(x, y) 1.0 if y = combine(x, y) NaN otherwise
-
def
combineAllOption(as: IterableOnce[A]): Option[A]
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
- Definition Classes
- Semigroup
-
def
combineN(a: A, n: Int): A
Return
a
combined with itselfn
times.Return
a
combined with itselfn
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
- Definition Classes
- Semigroup
-
def
equals(arg0: Any): Boolean
- Definition Classes
- Any
-
def
hashCode(): Int
- Definition Classes
- Any
-
def
intercalate(middle: A): CommutativeSemigroup[A]
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.
- Definition Classes
- CommutativeSemigroup → Semigroup
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
repeatedCombineN(a: A, n: Int): A
Return
a
combined with itself more than once. -
def
reverse: CommutativeSemigroup[A]
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)
- Definition Classes
- CommutativeSemigroup → Semigroup
-
def
toString(): String
- Definition Classes
- Any