Package

cats

arrow

Permalink

package arrow

Visibility
  1. Public
  2. All

Type Members

  1. trait Arrow[F[_, _]] extends Category[F] with Strong[F] with Serializable

    Permalink

    Must obey the laws defined in cats.laws.ArrowLaws.

  2. trait ArrowChoice[F[_, _]] extends Arrow[F] with Choice[F] with Serializable

    Permalink

    Must obey the laws defined in cats.laws.ArrowChoiceLaws.

  3. trait Category[F[_, _]] extends Compose[F] with Serializable

    Permalink

    Must obey the laws defined in cats.laws.CategoryLaws.

  4. trait Choice[F[_, _]] extends Category[F] with Serializable

    Permalink
  5. trait CommutativeArrow[F[_, _]] extends Arrow[F] with Serializable

    Permalink

    In a Commutative Arrow F[_, _], the split operation (or ***) is commutative, which means that there is non-interference between the effect of the paired arrows.

    In a Commutative Arrow F[_, _], the split operation (or ***) is commutative, which means that there is non-interference between the effect of the paired arrows.

    Must obey the laws in CommutativeArrowLaws

  6. trait Compose[F[_, _]] extends Serializable

    Permalink

    Must obey the laws defined in cats.laws.ComposeLaws.

    Must obey the laws defined in cats.laws.ComposeLaws.

    Here's how you can use >>> and <<< Example:

    scala> import cats.implicits._
    scala> val f : Int => Int = (_ + 1)
    scala> val g : Int => Int = (_ * 100)
    scala> (f >>> g)(3)
    res0: Int = 400
    scala> (f <<< g)(3)
    res1: Int = 301
  7. trait FunctionK[F[_], G[_]] extends Serializable

    Permalink

    FunctionK[F[_], G[_]] is a functor transformation from F to G in the same manner that function A => B is a morphism from values of type A to B.

    FunctionK[F[_], G[_]] is a functor transformation from F to G in the same manner that function A => B is a morphism from values of type A to B. An easy way to create a FunctionK instance is to use the Polymorphic lambdas provided by non/kind-projector v0.9+. E.g.

    val listToOption = λ[FunctionK[List, Option]](_.headOption)
  8. trait Profunctor[F[_, _]] extends Serializable

    Permalink

    A Profunctor is a Contravariant functor on its first type parameter and a Functor on its second type parameter.

    A Profunctor is a Contravariant functor on its first type parameter and a Functor on its second type parameter.

    Must obey the laws defined in cats.laws.ProfunctorLaws.

  9. trait Strong[F[_, _]] extends Profunctor[F] with Serializable

    Permalink

    Must obey the laws defined in cats.laws.StrongLaws.

Value Members

  1. object Arrow extends Serializable

    Permalink
  2. object ArrowChoice extends Serializable

    Permalink
  3. object Category extends Serializable

    Permalink
  4. object Choice extends Serializable

    Permalink
  5. object CommutativeArrow extends Serializable

    Permalink
  6. object Compose extends Serializable

    Permalink
  7. object FunctionK extends Serializable

    Permalink
  8. object Profunctor extends Serializable

    Permalink
  9. object Strong extends Serializable

    Permalink

Ungrouped