case class の copy
メソッドで作られた新しいオブジェクトは、traitの version
の値を引き継ぎませんが、Scala 2.10ではこれを引き継ぐようにできるのでしょうか?
trait Version {
var version = 1
}
case class Item(name : String) extends Version
val foo = Item("Foo")
foo.version = 2
println(foo)
println(foo.version) // 2
val bar = foo.copy()
println(bar.version) // 1 (ここが2になるようにしたい)