Packages

trait Functor[F[_]] extends InvariantFunctor[F]

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Functor
  2. InvariantFunctor
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. trait FunctorLaw extends InvariantFunctorLaw
  2. trait InvariantFunctorLaw extends AnyRef
    Definition Classes
    InvariantFunctor

Abstract Value Members

  1. abstract def map[A, B](fa: F[A])(f: (A) => B): F[B]

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

Concrete Value Members

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

    Alias for map.

  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

  3. def compose[G[_]](implicit G0: Functor[G]): Functor[[α]F[G[α]]]

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

  4. def counzip[A, B](a: \/[F[A], F[B]]): F[\/[A, B]]
  5. def fpair[A](fa: F[A]): F[(A, A)]

    Twin all As in fa.

  6. def fproduct[A, B](fa: F[A])(f: (A) => B): F[(A, B)]

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

  7. def functorLaw: FunctorLaw
  8. val functorSyntax: FunctorSyntax[F]
  9. def icompose[G[_]](implicit G0: Contravariant[G]): Contravariant[[α]F[G[α]]]

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

  10. def invariantFunctorLaw: InvariantFunctorLaw
    Definition Classes
    InvariantFunctor
  11. val invariantFunctorSyntax: InvariantFunctorSyntax[F]
    Definition Classes
    InvariantFunctor
  12. def lift[A, B](f: (A) => B): (F[A]) => F[B]

    Lift f into F.

  13. def mapply[A, B](a: A)(f: F[(A) => B]): F[B]

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

  14. 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

  15. def strengthL[A, B](a: A, f: F[B]): F[(A, B)]

    Inject a to the left of Bs in f.

  16. def strengthR[A, B](f: F[A], b: B): F[(A, B)]

    Inject b to the right of As in f.

  17. def void[A](fa: F[A]): F[Unit]

    Empty fa of meaningful pure values, preserving its structure.

  18. 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.

  19. 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
  20. 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
  21. 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