BinaryMerge

abstract

Abstract class that can be used to implement custom binary merges with e.g. special collision behavior or an ordering that is not defined via an Order[T] typeclass

Companion
object
class Object
trait Matchable
class Any

Value members

Abstract methods

def collision(ai: Int, bi: Int): Unit

Called when elements a(ai) and b(bi) are equal according to compare

Called when elements a(ai) and b(bi) are equal according to compare

def compare(ai: Int, bi: Int): Int

Compare element ai of the first sequence with element bi of the second sequence

Compare element ai of the first sequence with element bi of the second sequence

Value Params
ai

an index into the first sequence

bi

an index into the second sequence

Returns

-1 if a(ai) < b(bi), 0 if a(ai) == b(bi), 1 if a(ai) > b(bi)

def fromA(a0: Int, a1: Int, bi: Int): Unit

Called for a subsequence of elements of a that are not overlapping any element of b

Called for a subsequence of elements of a that are not overlapping any element of b

def fromB(ai: Int, b0: Int, b1: Int): Unit

Called for a subsequence of elements of b that are not overlapping any element of a

Called for a subsequence of elements of b that are not overlapping any element of a

Concrete methods

def merge0(a0: Int, a1: Int, b0: Int, b1: Int): Unit