Packages

trait Comonad[F[_]] extends Cobind[F]

Self Type
Comonad[F]
Source
Comonad.scala
Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Comonad
  2. Cobind
  3. Functor
  4. InvariantFunctor
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. trait CobindLaws extends AnyRef
    Definition Classes
    Cobind
  2. trait ComonadLaws extends CobindLaws
  3. trait FunctorLaw extends InvariantFunctorLaw
    Definition Classes
    Functor
  4. trait InvariantFunctorLaw extends AnyRef
    Definition Classes
    InvariantFunctor

Abstract Value Members

  1. abstract def cobind[A, B](fa: F[A])(f: (F[A]) ⇒ B): F[B]

    Also know as extend

    Also know as extend

    Definition Classes
    Cobind
  2. abstract def copoint[A](p: F[A]): A

    Also known as extract / copure

  3. abstract def map[A, B](fa: F[A])(f: (A) ⇒ B): F[B]

    Lift f into F and apply to F[A].

    Lift f into F and apply to F[A].

    Definition Classes
    Functor

Concrete Value Members

  1. def apply[A, B](fa: F[A])(f: (A) ⇒ B): F[B]

    Alias for map.

    Alias for map.

    Definition Classes
    Functor
  2. def bicompose[G[_, _]](implicit arg0: Bifunctor[G]): Bifunctor[[α, β]F[G[α, β]]]

    The composition of Functor F and Bifunctor G, [x, y]F[G[x, y]], is a Bifunctor

    The composition of Functor F and Bifunctor G, [x, y]F[G[x, y]], is a Bifunctor

    Definition Classes
    Functor
  3. def cobindLaw: CobindLaws
    Definition Classes
    Cobind
  4. val cobindSyntax: CobindSyntax[F]
    Definition Classes
    Cobind
  5. def cojoin[A](fa: F[A]): F[F[A]]

    Also known as duplicate

    Also known as duplicate

    Definition Classes
    Cobind
  6. def comonadLaw: ComonadLaws
  7. val comonadSyntax: ComonadSyntax[F]
  8. def compose[G[_]](implicit G0: Functor[G]): Functor[[α]F[G[α]]]

    The composition of Functors F and G, [x]F[G[x]], is a Functor

    The composition of Functors F and G, [x]F[G[x]], is a Functor

    Definition Classes
    Functor
  9. final def copure[A](p: F[A]): A

    alias for copoint

  10. def counzip[A, B](a: \/[F[A], F[B]]): F[\/[A, B]]
    Definition Classes
    Functor
  11. final def extend[A, B](fa: F[A])(f: (F[A]) ⇒ B): F[B]
    Definition Classes
    Cobind
  12. def fpair[A](fa: F[A]): F[(A, A)]

    Twin all As in fa.

    Twin all As in fa.

    Definition Classes
    Functor
  13. def fproduct[A, B](fa: F[A])(f: (A) ⇒ B): F[(A, B)]

    Pair all As in fa with the result of function application.

    Pair all As in fa with the result of function application.

    Definition Classes
    Functor
  14. def functorLaw: FunctorLaw
    Definition Classes
    Functor
  15. val functorSyntax: FunctorSyntax[F]
    Definition Classes
    Functor
  16. def icompose[G[_]](implicit G0: Contravariant[G]): Contravariant[[α]F[G[α]]]

    The composition of Functor F and Contravariant G, [x]F[G[x]], is contravariant.

    The composition of Functor F and Contravariant G, [x]F[G[x]], is contravariant.

    Definition Classes
    Functor
  17. def invariantFunctorLaw: InvariantFunctorLaw
    Definition Classes
    InvariantFunctor
  18. val invariantFunctorSyntax: InvariantFunctorSyntax[F]
    Definition Classes
    InvariantFunctor
  19. def lift[A, B](f: (A) ⇒ B): (F[A]) ⇒ F[B]

    Lift f into F.

    Lift f into F.

    Definition Classes
    Functor
  20. def mapply[A, B](a: A)(f: F[(A) ⇒ B]): F[B]

    Lift apply(a), and apply the result to f.

    Lift apply(a), and apply the result to f.

    Definition Classes
    Functor
  21. def product[G[_]](implicit G0: Functor[G]): Functor[[α](F[α], G[α])]

    The product of Functors F and G, [x](F[x], G[x]]), is a Functor

    The product of Functors F and G, [x](F[x], G[x]]), is a Functor

    Definition Classes
    Functor
  22. def strengthL[A, B](a: A, f: F[B]): F[(A, B)]

    Inject a to the left of Bs in f.

    Inject a to the left of Bs in f.

    Definition Classes
    Functor
  23. def strengthR[A, B](f: F[A], b: B): F[(A, B)]

    Inject b to the right of As in f.

    Inject b to the right of As in f.

    Definition Classes
    Functor
  24. def void[A](fa: F[A]): F[Unit]

    Empty fa of meaningful pure values, preserving its structure.

    Empty fa of meaningful pure values, preserving its structure.

    Definition Classes
    Functor
  25. def widen[A, B](fa: F[A])(implicit ev: <~<[A, B]): F[B]

    Functors are covariant by nature, so we can treat an F[A] as an F[B] if A is a subtype of B.

    Functors are covariant by nature, so we can treat an F[A] as an F[B] if A is a subtype of B.

    Definition Classes
    Functor
  26. def xmap[A, B](fa: F[A], f: (A) ⇒ B, g: (B) ⇒ A): F[B]

    Converts ma to a value of type F[B] using the provided functions f and g.

    Converts ma to a value of type F[B] using the provided functions f and g.

    Definition Classes
    FunctorInvariantFunctor
  27. def xmapb[A, B](ma: F[A])(b: Bijection[A, B]): F[B]

    Converts ma to a value of type F[B] using the provided bijection.

    Converts ma to a value of type F[B] using the provided bijection.

    Definition Classes
    InvariantFunctor
  28. def xmapi[A, B](ma: F[A])(iso: Isomorphism.<=>[A, B]): F[B]

    Converts ma to a value of type F[B] using the provided isomorphism.

    Converts ma to a value of type F[B] using the provided isomorphism.

    Definition Classes
    InvariantFunctor