【发布时间】:2018-02-02 05:40:39
【问题描述】:
如果可能的话,我正在编写一个通用方法,它可以将Any 类型的参数转换为传递的ClassTag[T] 类型的对象。
def getTypedArg[T: ClassTag](any: Any): Option[T] = {
any match {
case t: T => Some(t)
case invalid =>
logger.warn(s"Invalid argument: $invalid")
None
}
}
我希望日志消息更精确如下:
case invalid => logger.warn(s"Invalid argument: $invalid of type $className")
如何从ClassTag[T] 中检索className?
或者,是否有一种完全不同的方法可以更好地服务于我的用例?
【问题讨论】:
-
我找到了this related question,但不知道如何将它应用到我的示例中