Patch

object Patch
Companion:
class
class Object
trait Matchable
class Any
Patch.type

Type members

Classlikes

final case class BigDecimal(distance: BigDecimal, precision: Int) extends Patch[BigDecimal]
final case class BigInt(distance: BigInteger) extends Patch[BigInteger]
final case class Bool(xor: Boolean) extends Patch[Boolean]
final case class EitherDiff[A, B](diff: Either[Patch[A], Patch[B]]) extends Patch[Either[A, B]]
final case class Identical[A]() extends Patch[A]
final case class LCS[A](edits: Chunk[Edit[A]]) extends Patch[Chunk[A]]
final case class NotComparable[A]() extends Patch[A]

Represents diff between incomparable values. For instance Left(1) and Right("a")

Represents diff between incomparable values. For instance Left(1) and Right("a")

final case class Number[A](distance: A)(implicit ev: Numeric[A]) extends Patch[A]
final case class Record[R](differences: ListMap[String, Patch[_]], schema: Record[R]) extends Patch[R]

Map of field-level diffs between two records. The map of differences is keyed to the records field names.

Map of field-level diffs between two records. The map of differences is keyed to the records field names.

final case class SchemaMigration(migrations: Chunk[Migration]) extends Patch[Schema[_]]
final case class Temporal[A](distances: List[Long], tpe: StandardType[A]) extends Patch[A]
final case class Total[A](value: A) extends Patch[A]
final case class Transform[A, B](patch: Patch[A], f: A => Either[String, B], g: B => Either[String, A]) extends Patch[B]
final case class Tuple[A, B](leftDifference: Patch[A], rightDifference: Patch[B]) extends Patch[(A, B)]
final case class ZonedDateTime(localDateTimeDiff: Patch[LocalDateTime], zoneIdDiff: Patch[String]) extends Patch[ZonedDateTime]

Value members

Concrete methods

def identical[A]: Identical[A]
def invert[A](patch: Patch[A]): Patch[A]