在宏中使用带通配符的typeOf

时间:2014-07-04 06:31:45

标签: scala scala-macros

我试图获得类型为Option [_]

的val
case q"$mods val $vname:$tpt = $expr" if tpt.tpe <:< typeOf[Option[_]] => 

但编译器抛出异常:

[error] Macros.scala:13: exception during macro expansion: 
[error] java.lang.Error: internal error: ? (WildcardType) is not supported
[error]         at scala.reflect.reify.codegen.GenTypes$class.reifyToughType(GenTypes.scala:196)
[error]         at scala.reflect.reify.codegen.GenTypes$class.reifyType(GenTypes.scala:66)

是否有一些解决方法来比较这些类型?

0 个答案:

没有答案