An equivalence for the underlying type A
.
An equivalence for the underlying type B
.
An equivalence for the underlying type C
.
An equivalence for the underlying type A
.
An equivalence for the underlying type B
.
An equivalence for the underlying type C
.
The higher-kinded type Class<F>
is the typeclass instance under
test. For example when testing the Monad
laws on an
Either<number, string>
, this would be Monad<Either>
.
A function that will get an equivalence for the type under test from an equivalence for the underlying type.
A function that will get an equivalence for the type under test from an equivalence for the underlying type.
Optional
MonoidOptional Monoid
for the underlying type A
, useful for typeclasses
like Applicative
that can build their own Monoid
instance from it.
Options for testing parameterized-type typeclasses. All the typeclass laws here expect their arguments to be of this type.