trait StrongMonadPlusLaw extends MonadPlusLaw
- Source
- MonadPlus.scala
- Alphabetic
- By Inheritance
- StrongMonadPlusLaw
- MonadPlusLaw
- MonadLaw
- BindLaw
- ApplicativeLaw
- ApplyLaw
- FunctorLaw
- InvariantFunctorLaw
- EmptyLaw
- PlusLaw
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
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 associative[A](f1: F[A], f2: F[A], f3: F[A])(implicit FA: Equal[F[A]]): Boolean
- Definition Classes
- PlusLaw
- 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[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- 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
- def emptyMap[A](f1: (A) => A)(implicit FA: Equal[F[A]]): Boolean
empty[A]
is a polymorphic value overA
.empty[A]
is a polymorphic value overA
.- Definition Classes
- MonadPlusLaw
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- 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)
.Lifted
f
applied to purea
is justf(a)
.- Definition Classes
- MonadLaw
- def leftPlusIdentity[A](f1: F[A])(implicit FA: Equal[F[A]]): Boolean
- Definition Classes
- EmptyLaw
- def leftZero[A](f: (A) => F[A])(implicit FA: Equal[F[A]]): Boolean
empty
short-circuits its right.empty
short-circuits its right.- Definition Classes
- MonadPlusLaw
- 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.Lifted
point
is a no-op.- Definition Classes
- MonadLaw
- def rightPlusIdentity[A](f1: F[A])(implicit FA: Equal[F[A]]): Boolean
- Definition Classes
- EmptyLaw
- def rightZero[A](f: F[A])(implicit FA: Equal[F[A]]): Boolean
empty
short-circuits throughout itsjoin
tree. - 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(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()