EqualIdempotent

zio.prelude.coherent.EqualIdempotent
See theEqualIdempotent companion object

Attributes

Companion
object
Graph
Supertypes
trait Idempotent[A]
trait AssociativeEqual[A]
trait Equal[A]
trait Associative[A]
class Object
trait Matchable
class Any
Show all

Members list

Value members

Inherited methods

final def both[B](that: => Equal[B]): Equal[(A, B)]

Constructs an Equal[(A, B)] given an Equal[A] and Equal[B] by first comparing the A values for equality and then comparing the B values for equality, if necessary.

Constructs an Equal[(A, B)] given an Equal[A] and Equal[B] by first comparing the A values for equality and then comparing the B values for equality, if necessary.

Attributes

Inherited from:
Equal
final def bothWith[B, C](that: => Equal[B])(f: C => (A, B)): Equal[C]

Constructs an Equal[C] given an Equal[A], an Equal[B] and a function f to transform a C value into an (A, B). The instance will convert each C value into an (A, B), compare the A values for equality, and then compare the B values for equality if necessary.

Constructs an Equal[C] given an Equal[A], an Equal[B] and a function f to transform a C value into an (A, B). The instance will convert each C value into an (A, B), compare the A values for equality, and then compare the B values for equality if necessary.

Attributes

Inherited from:
Equal
def combine(l: => A, r: => A): A

Attributes

Inherited from:
Associative
final def combineIdempotent(l: => A, r: => A)(implicit A: Equal[A]): A

If the values are equal, it doesn't attempt to combine them and promptly returns the first one. If not equal, the values are combined normally.

If the values are equal, it doesn't attempt to combine them and promptly returns the first one. If not equal, the values are combined normally.

Attributes

Inherited from:
Idempotent
def contramap[B](f: B => A): Equal[B]

Constructs an Equal[B] given an Equal[A] and a function f to transform a B value into an A value. The instance will convert each B value into an A and the compare the A values for equality.

Constructs an Equal[B] given an Equal[A] and a function f to transform a B value into an A value. The instance will convert each B value into an A and the compare the A values for equality.

Attributes

Inherited from:
Equal
final def either[B](that: => Equal[B]): Equal[Either[A, B]]

Constructs an Equal[Either[A, B]] given an Equal[A] and an Equal[B]. The instance will compare the Either[A, B] values and if both are Right or Left compare them for equality.

Constructs an Equal[Either[A, B]] given an Equal[A] and an Equal[B]. The instance will compare the Either[A, B] values and if both are Right or Left compare them for equality.

Attributes

Inherited from:
Equal
final def eitherWith[B, C](that: => Equal[B])(f: C => Either[A, B]): Equal[C]

Constructs an Equal[C] given an Equal[A], an Equal[B], and a function f to transform a C value into an Either[A, B]. The instance will convert each C value into an Either[A, B] and then if both are Right or Left compare them for equality.

Constructs an Equal[C] given an Equal[A], an Equal[B], and a function f to transform a C value into an Either[A, B]. The instance will convert each C value into an Either[A, B] and then if both are Right or Left compare them for equality.

Attributes

Inherited from:
Equal
final def equal(l: A, r: A): Boolean

Returns whether two values of type A are equal.

Returns whether two values of type A are equal.

Attributes

Inherited from:
Equal
def idempotent(implicit A: Equal[A]): Idempotent[A]

Creates a new instance which internally uses combineIdempotent for combining values.

Creates a new instance which internally uses combineIdempotent for combining values.

Attributes

Inherited from:
Idempotent
final def intersperse(middle: A): Associative[A]

Attributes

Inherited from:
Associative
def multiplyOption(n: Int)(a: A): Option[A]

Attributes

Inherited from:
Associative
final def notEqual(l: A, r: A): Boolean

Returns whether two values of type A are not equal.

Returns whether two values of type A are not equal.

Attributes

Inherited from:
Equal
final def repeat(a: A)(n: Int): A

Attributes

Inherited from:
Associative
def toScala[A1 <: A]: Equiv[A1]

Attributes

Inherited from:
Equal