say, I have the following:
trait SomeTrait { def someMethod: String; } object SomeObject extends SomeTrait { def someMethod = \"something\"; } >
trait SomeTrait { def someMethod: String; } object SomeObject extends SomeTrait { def someMethod = \"something\"; }
def companion[T](name : String)(implicit man: Manifest[T]) : T = Class.forName(name + "$").getField("MODULE$").get(man.erasure).asInstanceOf[T] val result = companion[SomeTrait]("SomeObject").someMethod