TraverseLaw

trait TraverseLaw extends FunctorLaw
class Object
trait Matchable
class Any

Value members

Concrete methods

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

Traversal through the scalaz.Id effect is equivalent to Functor#map

Traversal through the scalaz.Id effect is equivalent to Functor#map

def naturality[N[_], M[_], A](nat: NaturalTransformation[M, N])(fma: F[M[A]])(implicit N: Applicative[N], M: Applicative[M], NFA: Equal[N[F[A]]]): Boolean
Value Params
nat

A natural transformation from M to N for which these properties hold: (a: A) => nat(Applicative[M].point[A](a)) === Applicative[N].point[A](a) (f: M[A => B], ma: M[A]) => nat(Applicative[M].ap(ma)(f)) === Applicative[N].ap(nat(ma))(nat(f))

def parallelFusion[N[_], M[_], A, B](fa: F[A], amb: A => M[B], anb: A => N[B])(implicit N: Applicative[N], M: Applicative[M], MN: Equal[(M[F[B]], N[F[B]])]): Boolean

Two independent effects can be fused into a single effect, their product.

Two independent effects can be fused into a single effect, their product.

def purity[G[_], A](fa: F[A])(implicit G: Applicative[G], GFA: Equal[G[F[A]]]): Boolean

Traversal with the point function is the same as applying the point function directly

Traversal with the point function is the same as applying the point function directly

def sequentialFusion[N[_], M[_], A, B, C](fa: F[A], amb: A => M[B], bnc: B => N[C])(implicit N: Applicative[N], M: Applicative[M], MN: Equal[M[N[F[C]]]]): Boolean

Two sequentially dependent effects can be fused into one, their composition

Two sequentially dependent effects can be fused into one, their composition

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