Class/Object

zio.prelude

Equivalence

Related Docs: object Equivalence | package prelude

Permalink

final case class Equivalence[A, B](to: (A) ⇒ B, from: (B) ⇒ A) extends Product with Serializable

An Equivalence[A, B] defines an equivalence between two types A and B. These types represent different ways to store the same information.

For example, a List[Byte] is equivalent to a Vector[Byte]. Similarly, a List[Char] is equivalent to a String.

Equivalences are symmetrical. So if A is equivalent to B, then B is equivalent to A.

to

A function that converts an A into a B.

from

A function that converts a B into an A.

Self Type
Equivalence[A, B]
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Equivalence
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Equivalence(to: (A) ⇒ B, from: (B) ⇒ A)

    Permalink

    to

    A function that converts an A into a B.

    from

    A function that converts a B into an A.

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def >>>[C](that: Equivalence[B, C]): Equivalence[A, C]

    Permalink

    Composes this equivalence with the specified equivalence.

  5. def andThen[C](that: Equivalence[B, C]): Equivalence[A, C]

    Permalink

    A named method for >>>.

  6. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  7. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. def compose[C](that: Equivalence[C, A]): Equivalence[C, B]

    Permalink
  9. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  10. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. def flip: Equivalence[B, A]

    Permalink

    Flips this equivalence around.

  12. val from: (B) ⇒ A

    Permalink

    A function that converts a B into an A.

  13. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  14. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  15. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  16. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  17. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  18. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  19. val to: (A) ⇒ B

    Permalink

    A function that converts an A into a B.

  20. def toPartialEquivalence: PartialEquivalence[A, B, Nothing, Nothing]

    Permalink

    Converts this equivalence to a partial equivalence that cannot fail in either direction.

  21. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  22. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  23. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped