Shrink

object Shrink extends ShrinkLowPriority
Companion:
class
Source:
Shrink.scala
class Object
trait Matchable
class Any
Shrink.type

Value members

Concrete methods

def apply[T](s: T => Stream[T]): Shrink[T]

Shrink instance factory

Shrink instance factory

Source:
Shrink.scala
def shrink[T](x: T)(implicit s: Shrink[T]): Stream[T]

Shrink a value

Shrink a value

Source:
Shrink.scala
def shrinkWithOrig[T](x: T)(implicit s: Shrink[T]): Stream[T]

Shrink a value, but also return the original value as the first element in the resulting stream

Shrink a value, but also return the original value as the first element in the resulting stream

Source:
Shrink.scala
def xmap[T, U](from: T => U, to: U => T)(implicit st: Shrink[T]): Shrink[U]

Transform a Shrink[T] to a Shrink[U] where T and U are two isomorphic types whose relationship is described by the provided transformation functions. (exponential functor map)

Transform a Shrink[T] to a Shrink[U] where T and U are two isomorphic types whose relationship is described by the provided transformation functions. (exponential functor map)

Source:
Shrink.scala

Inherited methods

def withLazyList[T](s: T => LazyList[T]): Shrink[T]

Forward to Shrink instance factory

Forward to Shrink instance factory

Inherited from:
ShrinkVersionSpecific (hidden)
Source:
ScalaVersionSpecific.scala

Implicits

Implicits

implicit def shrinkContainer[C[_], T](implicit v: C[T] => Iterable[T], s: Shrink[T], b: Buildable[T, C[T]]): Shrink[C[T]]

Shrink instance of container

Shrink instance of container

Source:
Shrink.scala
implicit def shrinkContainer2[C[_, _], T, U](implicit v: C[T, U] => Iterable[(T, U)], s: Shrink[(T, U)], b: Buildable[(T, U), C[T, U]]): Shrink[C[T, U]]

Shrink instance of container2

Shrink instance of container2

Source:
Shrink.scala
implicit def shrinkEither[T1 : Shrink, T2 : Shrink]: Shrink[Either[T1, T2]]
implicit def shrinkFractional[T : Fractional]: Shrink[T]

Shrink instances for numeric data types

Shrink instances for numeric data types

Source:
Shrink.scala
implicit def shrinkIntegral[T : Integral]: Shrink[T]
implicit def shrinkOption[T : Shrink]: Shrink[Option[T]]

Shrink instance of Option

Shrink instance of Option

Source:
Shrink.scala
implicit lazy val shrinkString: Shrink[String]

Shrink instance of String

Shrink instance of String

Source:
Shrink.scala
implicit def shrinkTuple2[T1 : Shrink, T2 : Shrink]: Shrink[(T1, T2)]

Shrink instance of 2-tuple

Shrink instance of 2-tuple

Source:
Shrink.scala
implicit def shrinkTuple3[T1 : Shrink, T2 : Shrink, T3 : Shrink]: Shrink[(T1, T2, T3)]

Shrink instance of 3-tuple

Shrink instance of 3-tuple

Source:
Shrink.scala
implicit def shrinkTuple4[T1 : Shrink, T2 : Shrink, T3 : Shrink, T4 : Shrink]: Shrink[(T1, T2, T3, T4)]

Shrink instance of 4-tuple

Shrink instance of 4-tuple

Source:
Shrink.scala
implicit def shrinkTuple5[T1 : Shrink, T2 : Shrink, T3 : Shrink, T4 : Shrink, T5 : Shrink]: Shrink[(T1, T2, T3, T4, T5)]

Shrink instance of 5-tuple

Shrink instance of 5-tuple

Source:
Shrink.scala
implicit def shrinkTuple6[T1 : Shrink, T2 : Shrink, T3 : Shrink, T4 : Shrink, T5 : Shrink, T6 : Shrink]: Shrink[(T1, T2, T3, T4, T5, T6)]

Shrink instance of 6-tuple

Shrink instance of 6-tuple

Source:
Shrink.scala
implicit def shrinkTuple7[T1 : Shrink, T2 : Shrink, T3 : Shrink, T4 : Shrink, T5 : Shrink, T6 : Shrink, T7 : Shrink]: Shrink[(T1, T2, T3, T4, T5, T6, T7)]

Shrink instance of 7-tuple

Shrink instance of 7-tuple

Source:
Shrink.scala
implicit def shrinkTuple8[T1 : Shrink, T2 : Shrink, T3 : Shrink, T4 : Shrink, T5 : Shrink, T6 : Shrink, T7 : Shrink, T8 : Shrink]: Shrink[(T1, T2, T3, T4, T5, T6, T7, T8)]

Shrink instance of 8-tuple

Shrink instance of 8-tuple

Source:
Shrink.scala
implicit def shrinkTuple9[T1 : Shrink, T2 : Shrink, T3 : Shrink, T4 : Shrink, T5 : Shrink, T6 : Shrink, T7 : Shrink, T8 : Shrink, T9 : Shrink]: Shrink[(T1, T2, T3, T4, T5, T6, T7, T8, T9)]

Shrink instance of 9-tuple

Shrink instance of 9-tuple

Source:
Shrink.scala

Inherited implicits

implicit def shrinkAny[T]: Shrink[T]

Default shrink instance

Default shrink instance

Inherited from:
ShrinkLowPriority
Source:
Shrink.scala
final implicit lazy val shrinkJavaDuration: Shrink[Duration]
Inherited from:
JavaTimeShrink (hidden)
Source:
JavaTimeShrink.scala
final implicit lazy val shrinkPeriod: Shrink[Period]
Inherited from:
JavaTimeShrink (hidden)
Source:
JavaTimeShrink.scala