trait MonadLaw extends ApplicativeLaw with BindLaw
- Alphabetic
- By Inheritance
- MonadLaw
- BindLaw
- ApplicativeLaw
- ApplyLaw
- FunctorLaw
- InvariantFunctorLaw
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
apLikeDerived[A, B](fa: F[A], f: F[(A) ⇒ B])(implicit FB: Equal[F[B]]): Boolean
ap
is consistent withbind
.ap
is consistent withbind
.- Definition Classes
- BindLaw
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
associativeBind[A, B, C](fa: F[A], f: (A) ⇒ F[B], g: (B) ⇒ F[C])(implicit FC: Equal[F[C]]): Boolean
As with semigroups, monadic effects only change when their order is changed, not when the order in which they're combined changes.
As with semigroups, monadic effects only change when their order is changed, not when the order in which they're combined changes.
- Definition Classes
- BindLaw
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
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.
- Definition Classes
- 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.
- Definition Classes
- ApplyLaw
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
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.- Definition Classes
- ApplicativeLaw
-
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.
- Definition Classes
- FunctorLaw
-
def
identityAp[A](fa: F[A])(implicit FA: Equal[F[A]]): Boolean
point(identity)
is a no-op.point(identity)
is a no-op.- Definition Classes
- ApplicativeLaw
-
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.- Definition Classes
- ApplicativeLaw
-
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
- Definition Classes
- InvariantFunctorLaw
-
def
invariantIdentity[A](fa: F[A])(implicit FA: Equal[F[A]]): Boolean
- Definition Classes
- InvariantFunctorLaw
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
leftIdentity[A, B](a: A, f: (A) ⇒ F[B])(implicit FB: Equal[F[B]]): Boolean
Lifted
f
applied to purea
is justf(a)
. -
def
mapLikeDerived[A, B](f: (A) ⇒ B, fa: F[A])(implicit FB: Equal[F[B]]): Boolean
map
is like the one derived frompoint
andap
.map
is like the one derived frompoint
andap
.- Definition Classes
- ApplicativeLaw
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
rightIdentity[A](a: F[A])(implicit FA: Equal[F[A]]): Boolean
Lifted
point
is a no-op. -
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )