Object/Class

cats.evidence

As

Related Docs: class As | package evidence

Permalink

object As extends AsInstances with Serializable

Linear Supertypes
Serializable, Serializable, AsInstances, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. As
  2. Serializable
  3. Serializable
  4. AsInstances
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

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. final def asInstanceOf[T0]: T0

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. def co[T[+_], A, A2](a: As[A, A2]): As[T[A], T[A2]]

    Permalink

    We can lift subtyping into any covariant type constructor

  7. def co2[T[+_, _], Z, A, B](a: As[A, Z]): As[T[A, B], T[Z, B]]

    Permalink
  8. def co2_2[T[_, +_], Z, A, B](a: As[B, Z]): As[T[A, B], T[A, Z]]

    Permalink

    Widen a F[X,+A] to a F[X,B] if (A As B).

    Widen a F[X,+A] to a F[X,B] if (A As B). This can be used to widen the output of a Function1, for example.

  9. def co3[T[+_, _, _], Z, A, B, C](a: As[A, Z]): As[T[A, B, C], T[Z, B, C]]

    Permalink
  10. def co3_2[T[_, +_, _], Z, A, B, C](a: As[B, Z]): As[T[A, B, C], T[A, Z, C]]

    Permalink
  11. def co3_3[T[+_, _, +_], Z, A, B, C](a: As[C, Z]): As[T[A, B, C], T[A, B, Z]]

    Permalink
  12. def compose[A, B, C](f: As[B, C], g: As[A, B]): As[A, C]

    Permalink

    Subtyping is transitive

  13. def conF[A, B, C](ev: As[B, A])(fa: (A) ⇒ C): (B) ⇒ C

    Permalink

    Use this relationship to narrow the input type of a Function1

  14. def contra[T[-_], A, B](a: As[A, B]): As[T[B], T[A]]

    Permalink

    We can lift a subtyping relationship into a contravariant type constructor.

    We can lift a subtyping relationship into a contravariant type constructor.

    Given that F has the shape: F[-_], we show that: (A As B) implies (F[B] As F[A])

  15. def contra1_2[T[-_, _], Z, A, B](a: As[A, Z]): As[T[Z, B], T[A, B]]

    Permalink
  16. def contra1_3[T[-_, _, _], Z, A, B, C](a: As[A, Z]): As[T[Z, B, C], T[A, B, C]]

    Permalink
  17. def contra2_2[T[_, -_], Z, A, B](a: As[B, Z]): As[T[A, Z], T[A, B]]

    Permalink
  18. def contra2_3[T[_, -_, _], Z, A, B, C](a: As[B, Z]): As[T[A, Z, C], T[A, B, C]]

    Permalink
  19. def contra3_3[T[_, _, -_], Z, A, B, C](a: As[C, Z]): As[T[A, B, Z], T[A, B, C]]

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

    Permalink
    Definition Classes
    AnyRef
  21. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  22. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  23. def fromPredef[A, B](eq: <:<[A, B]): As[A, B]

    Permalink

    It can be convenient to convert a <:< value into a <~< value.

    It can be convenient to convert a <:< value into a <~< value. This is not strictly valid as while it is almost certainly true that A <:< B implies A <~< B it is not the case that you can create evidence of A <~< B except via a coercion. Use responsibly.

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

    Permalink
    Definition Classes
    AnyRef → Any
  25. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  26. def invF[C, D, A, B](ev1: As[D, C], ev2: As[A, B])(fa: (C) ⇒ A): (D) ⇒ B

    Permalink

    Use this relationship to widen the output type and narrow the input type of a Function1

  27. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  28. def lift2[T[+_, +_], A, A2, B, B2](a: As[A, A2], b: As[B, B2]): As[T[A, B], T[A2, B2]]

    Permalink

    widen two types for binary type constructors covariant in both parameters

    widen two types for binary type constructors covariant in both parameters

    lift2(a,b) = co1_2(a) compose co2_2(b)

  29. implicit val liskov: Category[As]

    Permalink
    Definition Classes
    AsInstances
  30. final def ne(arg0: AnyRef): Boolean

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

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

    Permalink
    Definition Classes
    AnyRef
  33. def onF[X, A, B](ev: As[A, B])(fa: (X) ⇒ A): (X) ⇒ B

    Permalink

    Use this relationship to widen the output type of a Function1

  34. implicit def refl[A]: As[A, A]

    Permalink

    Subtyping is reflexive

  35. def reify[A, B >: A]: As[A, B]

    Permalink

    reify a subtype relationship as a Liskov relationship

    reify a subtype relationship as a Liskov relationship

    Annotations
    @inline()
  36. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  37. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  38. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  41. implicit def witness[A, B](lt: As[A, B]): (A) ⇒ B

    Permalink

    We can witness the relationship by using it to make a substitution *

Inherited from Serializable

Inherited from Serializable

Inherited from AsInstances

Inherited from AnyRef

Inherited from Any

Ungrouped