ApplicativeLaw

trait ApplicativeLaw extends ApplyLaw
trait ApplyLaw
class Object
trait Matchable
class Any

Value members

Concrete methods

def homomorphism[A, B](ab: A => B, a: A)(implicit FB: Equal[F[B]]): Boolean

point distributes over function applications.

point distributes over function applications.

def identityAp[A](fa: F[A])(implicit FA: Equal[F[A]]): Boolean

point(identity) is a no-op.

point(identity) is a no-op.

def interchange[A, B](f: F[A => B], a: A)(implicit FB: Equal[F[B]]): Boolean

point is a left and right identity, F-wise.

point is a left and right identity, F-wise.

def mapLikeDerived[A, B](f: A => B, fa: F[A])(implicit FB: Equal[F[B]]): Boolean

map is like the one derived from point and ap.

map is like the one derived from point and ap.

Inherited methods

def composite[A, B, C](fa: F[A], f1: A => B, f2: B => C)(implicit FC: Equal[F[C]]): Boolean

A series of maps may be freely rewritten as a single map on a composed function.

A series of maps may be freely rewritten as a single map on a composed function.

Inherited from
FunctorLaw
def composition[A, B, C](fbc: F[B => C], fab: F[A => B], fa: F[A])(implicit FC: Equal[F[C]]): Boolean

Lifted functions can be fused.

Lifted functions can be fused.

Inherited from
ApplyLaw
def identity[A](fa: F[A])(implicit FA: Equal[F[A]]): Boolean

The identity function, lifted, is a no-op.

The identity function, lifted, is a no-op.

Inherited from
FunctorLaw
def invariantComposite[A, B, C](fa: F[A], f1: A => B, g1: B => A, f2: B => C, g2: C => B)(implicit FC: Equal[F[C]]): Boolean
Inherited from
InvariantFunctorLaw
def invariantIdentity[A](fa: F[A])(implicit FA: Equal[F[A]]): Boolean
Inherited from
InvariantFunctorLaw