BinaryUpdateRegistry

trait BinaryUpdateRegistry[A <: AnyRef, B, Op <: OpType] extends InPlaceImpl2[Op, A, B] with MMRegistry2[InPlaceImpl2[Op, _ <: A, _ <: B]]

This is a special kind of BinaryUpdateOp that supports registration of specialized implementations for a given operation.

trait MMRegistry2[InPlaceImpl2[Op, _ <: A, _ <: B]]
trait InPlaceImpl2[Op, A, B]
trait Serializable
class Object
trait Matchable
class Any

Value members

Concrete methods

def apply(a: A, b: B): Unit
protected def bindingMissing(a: A, b: B): Unit
protected def multipleOptions(a: A, b: B, m: Map[(Class[_], Class[_]), InPlaceImpl2[Op, _ <: A, _ <: B]]): Unit
def register[AA <: A, BB <: B](op: InPlaceImpl2[Op, AA, BB])(implicit cA: ClassTag[AA], cB: ClassTag[BB]): InPlaceImpl2[Op, AA, BB]

Inherited methods

def register(a: Class[_], b: Class[_], op: InPlaceImpl2[Op, _ <: A, _ <: B]): Unit
Inherited from
MMRegistry2
def resolve(a: Class[_], b: Class[_]): Map[(Class[_], Class[_]), InPlaceImpl2[Op, _ <: A, _ <: B]]
Inherited from
MMRegistry2
protected def selectBestOption(options: Map[(Class[_], Class[_]), InPlaceImpl2[Op, _ <: A, _ <: B]]): MapView[(Class[_], Class[_]), InPlaceImpl2[Op, _ <: A, _ <: B]]

This selects based on the partial order induced by the inheritance hierarchy. If there is ambiguity, all are returned.

This selects based on the partial order induced by the inheritance hierarchy. If there is ambiguity, all are returned.

Inherited from
MMRegistry2

Inherited fields

protected val cache: ConcurrentHashMap[(Class[_], Class[_]), Option[InPlaceImpl2[Op, _ <: A, _ <: B]]]
Inherited from
MMRegistry2
protected val ops: HashMap[(Class[_], Class[_]), InPlaceImpl2[Op, _ <: A, _ <: B]]
Inherited from
MMRegistry2