Derives Arbitrary[T]
instances for T
an HList
, a Coproduct
,
a case class or an ADT (or more generally, a type represented
Generic
ally as an HList
or a Coproduct
).
Derives Cogen[T]
instances for T
an HList
, a Coproduct
,
a case class or an ADT (or more generally, a type represented
Generic
ally as an HList
or a Coproduct
).
Derives Cogen[T]
instances for T
an HList
, a Coproduct
,
a case class or an ADT (or more generally, a type represented
Generic
ally as an HList
or a Coproduct
).
Use like
val cogen: Cogen[T] = MkCogen[T].cogen
or look up for an implicit MkCogen[T]
.
Derives Shrink[T]
instances for T
an HList
, a Coproduct
,
a case class or an ADT (or more generally, a type represented
Generic
ally as an HList
or a Coproduct
).
Derives Shrink[T]
instances for T
an HList
, a Coproduct
,
a case class or an ADT (or more generally, a type represented
Generic
ally as an HList
or a Coproduct
).
The instances derived here are more specific than the default ones
derived for any type by Shrink.shrinkAny
.
Use like
val shrink: Shrink[T] = MkShrink[T].shrink
or look up for an implicit MkShrink[T]
.
Type class providing the instances of T
that can be built out of
singletons only.
Type class providing the instances of T
that can be built out of
singletons only.
Used by the derived Shrink instances for ADTs in particular.
Derives
Arbitrary[T]
instances forT
anHList
, aCoproduct
, a case class or an ADT (or more generally, a type representedGeneric
ally as anHList
or aCoproduct
).Use like val arbitrary: Arbitrary[T] = MkArbitrary[T].arbitrary or look up for an implicit
MkArbitrary[T]
.