Я использую Scala и хочу расширить объект (одноэлементный) с помощью трейта, который предоставляет структуру данных и некоторые методы, например:
trait Tray[T] {
val tray = ListBuffer.empty[T]
def add[T] (t: T) = tray += t
def get[T]: List[T] = tray.toList
}
А затем я хотел бы добавить трейт в объект, например:
object Test with Tray[Int]
Но есть несоответствия типов в add
и get
:
Test.add(1)
// ...
Как я могу заставить это работать? Или в чем моя ошибка?