我正在做一个宏注释,我有这样的东西:
def findClass(className: String) : ClassSymbol = {
val tree = c.typecheck(c.parse(s"??? : ${className}"));
return tree.tpe.typeSymbol.asClass;
}
问题是 whenclassName
是类似的东西List
,它显然会抱怨,因为它需要参数。如果是List[String]
,那很好。
老实说,我不完全理解为什么,例如,classOf[List]
考虑到 List 中的泛型类型是不变的,为什么不被接受?执行classOf[List[String]]
and classOf[List[Integer]]
,返回相同的类。
因此,假设我的方法findClass
将始终接收一个没有参数或具有不变参数的类,我该如何对ValDef
?