Scala: recuperar o nome da classe do ClassTag
Estou escrevendo ummétodo genérico que pode converterAny
argumento de tipo para um objeto de passadoClassTag[T]
tipo, se possível.
def getTypedArg[T: ClassTag](any: Any): Option[T] = {
any match {
case t: T => Some(t)
case invalid =>
logger.warn(s"Invalid argument: $invalid")
None
}
}
eu quero omensagem de log ser maispreciso como isso:
case invalid => logger.warn(s"Invalid argument: $invalid of type $className")
Como posso recuperarclassName
deClassTag[T]
?
Como alternativa, existe uma abordagem fundamentalmente diferente que pode servir melhor ao meu caso de uso?