scala – 如何同时获取ClassTag表单TypeTag或两者同时?
发布时间:2020-12-16 09:23:09 所属栏目:安全 来源:网络整理
导读:我有一些这样的代码: class ReflectiveJsonFormat[T:TypeTag] extends JsonFormat[T] { def write(x: T) : JsValue = { val t = typeOf[T] val getters = t.declarations.filter { s = s.isMethod s.asMethod.isGetter } val mirror = runtimeMirror(this.g
我有一些这样的代码:
class ReflectiveJsonFormat[T:TypeTag] extends JsonFormat[T] { def write(x: T) : JsValue = { val t = typeOf[T] val getters = t.declarations.filter { s => s.isMethod && s.asMethod.isGetter } val mirror = runtimeMirror(this.getClass.getClassLoader) val instanceMiror = mirror.reflect(x) } } 最后一行失败:
我认为TypeTag比ClassTag更多的信息?我可以从TypeTag获得ClassTag吗?如果没有,有没有一些语法说T有两个上下文边界 – TypeTag和ClassTag?或者,你会如何解决这个代码? 解决方法
如果这是你以后,scala确实支持多个上下文边界:
class ReflectiveJsonFormat[T:TypeTag:ClassTag] (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |