【发布时间】:2016-04-07 21:20:18
【问题描述】:
我是 Xtend/Xtext 新手。目前我正在使用新的格式化程序 API,我正在尝试格式化规则,如下所示:
Expression:
Error|Warning|Enum|Text
;
用这样的 xtend 调度方法
def dispatch void format(Expression e){
if (e instanceof ErrorImpl)
((ErrorImpl)e).format
}
问题是,那种类型的表达式 e 是无法发现的,我收到了这个错误
Type mismatch: cannot convert from Class<ErrorImpl> to Expression
为什么我不能进行这种转换(我当然怀疑 xTend 语义)(甚至 Eclipse 都告诉我 Expression 只是创建子对象的接口。)以及如何我可以为这条规则的每个孩子调用 format 方法吗?谢谢。
【问题讨论】: