Mezclando dinámicamente un rasgo.
Tener un rasgo
trait Persisted {
def id: Long
}
¿Cómo implemento un método que acepte una instancia de cualquier clase de caso y devuelva su copia con el rasgo mezclado?
La firma del método se ve así:
def toPersisted[T](instance: T, id: Long): T with Persisted