У меня есть два объекта, ObjectA и ObjectB, оба с методом update (). Я хочу написать функцию, которая принимает либо ObjectA или ObjectB (но не другие типы). Концептуально это то, что я пытаюсь сделать:
def doSomething[T <: ObjectA | T <: ObjectB](obj: T) = {
obj.update
}
Я понимаю, что есть другие способы решения этой проблемы (например, структурная типизация метода update (), общий базовый класс и т. Д.), Но мой вопрос: возможно ли сделать это таким образом в Scala, и если да, то что синтаксис? И как это называется?