abstract class ComposeLaw[-CapsBothF[_[-_, +_]], -Caps[_]] extends Divariant[CapsBothF, Caps, Caps, Any]
Constructs a law from a pure function taking one parameterized value and two functions that can be composed.
- Self Type
- ComposeLaw[CapsBothF, Caps]
- Alphabetic
- By Inheritance
- ComposeLaw
- Divariant
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new ComposeLaw(label: String)
Abstract Value Members
- abstract def apply[F[-_, +_], A, B, A1, A2](fa: F[A, B], f: (A) => A1, g: (A1) => A2)(implicit arg0: CapsBothF[F], arg1: Caps[A], arg2: Caps[B], arg3: Caps[A1], arg4: Caps[A2]): TestResult
- abstract def run[R1 <: Any, F[-_, +_], A, B](genF: GenF2[R1, F], gen: Gen[R1, B])(implicit arg0: CapsBothF[F], arg1: Caps[A], arg2: Caps[B], trace: Trace): ZIO[R1, Nothing, TestResult]
Test that values of type
F[+_,-_]
satisfy the laws using the specified function to construct a generator ofF[A,B]
values given a generator ofB
values.Test that values of type
F[+_,-_]
satisfy the laws using the specified function to construct a generator ofF[A,B]
values given a generator ofB
values.- Definition Classes
- Divariant
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- def +[CapsF1[x[-_, +_]] <: CapsBothF[x[_, _]], CapsLeft1[x] <: Caps[x], CapsRight1[x] <: Caps[x], R1 <: Any](that: Divariant[CapsF1, CapsLeft1, CapsRight1, R1]): Divariant[CapsF1, CapsLeft1, CapsRight1, R1]
Combine these laws with the specified laws to produce a set of laws that require both sets of laws to be satisfied.
Combine these laws with the specified laws to produce a set of laws that require both sets of laws to be satisfied.
- Definition Classes
- Divariant
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- 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()
- final def run[R, F[-_, +_], A, B, A1, A2](genF: GenF2[R, F], genB: Gen[R, B], genA1: Gen[R, A1], genA2: Gen[R, A2])(implicit arg0: CapsBothF[F], arg1: Caps[A], arg2: Caps[B], arg3: Caps[A1], arg4: Caps[A2], trace: Trace): URIO[R, TestResult]
- 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()