【发布时间】:2013-09-01 00:06:48
【问题描述】:
我完成了 eclipse.org/Xtext/documentation 上的教程并开始扩展这些示例。使用 Domainmodel.xtext 示例,我为每个实体生成了一个 Java-Classfile,如 Tut 中所述。
DSL 指定了任意数量的特性,也就是类属性:
Entity:
'entity' name = ID
('extends' superType = [Entity | QualifiedName])?
'{'
(features += Feature)*
'}'
;
在 DomainmodelGenerator.xtend 然后我添加了代码来生成一个 JAVA-classconstructor。 XTEND-Forloop 循环遍历所有争论 - 如下所示:
def compile_Constructors(Entity e) '''
public «e.name.toFirstUpper»
(
«FOR f : e.features»
«f.type.fullyQualifiedName» «f.name.toFirstUpper»,
«ENDFOR»
)
{}
'''
问题 有了这个最后一个参数,仍然会发出一个逗号。如何在 XTEND 中控制 loopindex,使生成器发出合法的 JAVA 代码?
【问题讨论】: