Packages

trait Distributive[F[_]] extends Functor[F] with DistributiveParent[F]

Dual of scalaz.Traverse. To transform F[G[B]] to G[F[B]], you may use Traverse[F] and Applicative[G], but alternatively Functor[F] and Distributive[G], which permits greater sharing and nonstrictness.

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

Type Members

  1. class Distribution[G[_]] extends AnyRef
  2. trait FunctorLaw extends InvariantFunctorLaw
    Definition Classes
    Functor
  3. trait InvariantFunctorLaw extends AnyRef
    Definition Classes
    InvariantFunctor

Abstract Value Members

  1. abstract def distributeImpl[G[_], A, B](fa: G[A])(f: (A) ⇒ F[B])(implicit arg0: Functor[G]): F[G[B]]
  2. 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. 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. def apply[A, B](fa: F[A])(f: (A) ⇒ B): F[B]

    Alias for map.

    Alias for map.

    Definition Classes
    Functor
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. 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
  7. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  8. def compose[G[_]](implicit G0: Distributive[G]): Distributive[[α]F[G[α]]]

    The composition of Distributives F and G, [x]F[G[x]], is a Distributive

  9. 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
  10. def cosequence[G[_], A](fa: G[F[A]])(implicit arg0: Functor[G]): F[G[A]]
  11. def cotraverse[G[_], A, B](gfa: G[F[A]])(f: (G[A]) ⇒ B)(implicit arg0: Functor[G]): F[B]
    Definition Classes
    DistributiveParent
  12. def counzip[A, B](a: \/[F[A], F[B]]): F[\/[A, B]]
    Definition Classes
    Functor
  13. def distribute[G[_], A, B](fa: G[A])(f: (A) ⇒ F[B])(implicit arg0: Functor[G]): F[G[B]]
  14. def distribution[G[_]](implicit arg0: Functor[G]): Distribution[G]
  15. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  16. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  17. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  18. def fpair[A](fa: F[A]): F[(A, A)]

    Twin all As in fa.

    Twin all As in fa.

    Definition Classes
    Functor
  19. 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
  20. def functorLaw: FunctorLaw
    Definition Classes
    Functor
  21. val functorSyntax: FunctorSyntax[F]
    Definition Classes
    Functor
  22. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  23. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  24. 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
  25. def invariantFunctorLaw: InvariantFunctorLaw
    Definition Classes
    InvariantFunctor
  26. val invariantFunctorSyntax: InvariantFunctorSyntax[F]
    Definition Classes
    InvariantFunctor
  27. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  28. def lift[A, B](f: (A) ⇒ B): (F[A]) ⇒ F[B]

    Lift f into F.

    Lift f into F.

    Definition Classes
    Functor
  29. 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
  30. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  31. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  32. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  33. def product[G[_]](implicit G0: Distributive[G]): Distributive[[α](F[α], G[α])]

    The product of Distributives F and G, [x](F[x], G[x]]), is a Distributive

  34. 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
  35. 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
  36. 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
  37. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  38. def toString(): String
    Definition Classes
    AnyRef → Any
  39. 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
  40. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  41. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  42. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  43. 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
  44. 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
  45. 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
  46. 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

Inherited from DistributiveParent[F]

Inherited from Functor[F]

Inherited from InvariantFunctor[F]

Inherited from AnyRef

Inherited from Any

Ungrouped