Packages

sealed abstract class Coyoneda[F[_], A] extends AnyRef

The dual view of the Yoneda lemma. Also a free functor on F. This is isomorphic to F as long as F itself is a functor. The homomorphism from F[A] to Coyoneda[F,A] exists even when F is not a functor.

Self Type
Coyoneda[F, A]
Source
Coyoneda.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Coyoneda
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. abstract type I

    The pivot between fi and k, usually existential.

Abstract Value Members

  1. abstract val fi: F[I]

    The underlying value.

  2. abstract val k: (I) ⇒ A

    The transformer function, to be lifted into F by run.

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws(classOf[java.lang.CloneNotSupportedException])
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. def extend[G[_]](f: ~>[[β$1$]Coyoneda[F, β$1$], G]): Coyoneda[G, A]

    Coyoneda is a comonad in an endofunctor category

  9. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  10. def flatMap[G[_]](f: ~>[F, [β$0$]Coyoneda[G, β$0$]]): Coyoneda[G, A]

    Coyoneda is a monad in an endofunctor category

  11. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  12. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  13. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  14. final def map[B](f: (A) ⇒ B): Aux[F, B, I]

    Simple function composition.

    Simple function composition. Allows map fusion without touching the underlying F.

  15. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  16. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  17. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  18. final def run(implicit F: Functor[F]): F[A]

    Converts to F[A] given that F is a functor

  19. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  20. def toLan: Lan[Id.Id, F, A]

    Coyoneda[F,_] is the left Kan extension of F along Id

  21. def toString(): String
    Definition Classes
    AnyRef → Any
  22. final def toYoneda(implicit F: Functor[F]): Yoneda[F, A]

    Converts to Yoneda[F,A] given that F is a functor

  23. final def trans[G[_]](f: ~>[F, G]): Aux[G, A, I]
  24. final def unlift(implicit F: Functor[F]): F[A]

    Alias for run.

    Alias for run.

    Annotations
    @inline()
  25. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  26. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  27. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws(classOf[java.lang.InterruptedException])

Inherited from AnyRef

Inherited from Any

Ungrouped