使用参数抽象scala case类复制方法

时间:2013-10-17 12:59:28

标签: scala

我需要抽象Scala编译器为case类及其参数生成的copy方法。就我而言,我有一个类似下面的保存方法

def save[T<:Data](data:T):T={
// store in db and get the id
  val dbId = ...
  data.copy(dbId)
}

和一组案例类如下

trait Data
case class Foo (id:Option[Int] = None,name:String,age:Int) extends Data
case class Bar (id:Option[Int] = None, name:String,address:String) extends Data

我如何抽象复制方法,任何替代解决方案将不胜感激。

0 个答案:

没有答案