如何比较Scala反射库类型`universe.Type`和普通类型之间的权重?

时间:2013-11-01 10:16:48

标签: scala reflection

我正在练习使用Scala反射功能,我得到了这个结果:

res46: reflect.runtime.universe.Type = scala.List[String]

如何测试结果值,看看它是否代表List[String]

换句话说,如何测试universe.Type是否代表指定的普通Scala类型?

1 个答案:

答案 0 :(得分:3)

import scala.reflect.runtime.universe._

val tpe: Type = ???

//type equivalence test (is tpe exactly List[String]?)
tpe =:= typeOf[List[String]]

//type conformance test (is tpe a subtype of List[String]?)
tpe <:< typeOf[List[String]]