title: Scala case class conversion
body: <p>Is there a way to convert one case class to another when they have the same fields and inherit from the same trait, without providing a converter function (that would simply do the one to one field mapping)?</p>
  
  <p>For example:</p>
  
  <pre><code>trait UberSomething {
    val name: String
  }
  // these may be located in different files
  case class Something(name: String) extends UberSomething
  case class SomethingOther(name: String) extends UberSomething
  
  val s = Something("wtv")
  //s.asInstanceOf[SomethingOther] FAILS
  </code></pre>