Tengo algunas dificultades para el diseño de mis clases de casos. Una versión simplificada que parece:Scala jerarquía de clases caso
abstract class Base(s: Option[String]) {
//code
}
case class CaseClass(s: Option[String] = None) extends Base(s) {
//code
}
Y tengo un método donde quiero hacer algo como:
def method(base : Base) = {
//code
base copy (s = Some("string"))
}
Por supuesto me sale:
value copy is not a member of Base
Así que lo que quieren do es crear una nueva instancia basada en mi clase base (que no es una clase de caso). Obviamente uno no puede hacer esto. ¿Pero cómo resolverías esto de una manera elegante?
¡Gracias de antemano!
Pregunta relacionada: http://stackoverflow.com/questions/2911562/case-class-copy-method-abstraction –
http://scala-programming-language.1934581.n4nabble.com/Question-on- -caso clases y copia-método-td1936310.html –