【发布时间】:2019-04-24 16:37:22
【问题描述】:
假设我有一个类型,结果:
trait Result[+T] {
def getValue: T
}
以及该特征的一个子类型,AnyValResult:
class AnyValResult(value: AnyVal) extends Result[AnyVal] {
override def getValue: AnyVal = value
}
我希望能够向 Scala 的反射库询问 Result[_] 类型的所有子类型,并让它返回一个包含 AnyValResult 的集合。
我看到很多人问这个问题,他们似乎都说他们是使用第三方工具完成的。这是几年前的事了。除了对第三方工具进行逆向工程之外,有没有一种方法可以在最近版本的 Scala 中引入?如果我可以直接用反射来做的话,我宁愿不必在 Github 上引用一些随机项目。
【问题讨论】:
标签: scala reflection