Xtext中的数组没有方括号

时间:2015-05-11 08:19:09

标签: arrays code-generation xtext emf xtend

我想在Xtext中的规则中实现一个数组,并使用Xtend模板生成代码。我已经检查了this Post,但问题是,生成器会自动为生成的输出添加方括号。

我的Xtext规则类似于以下示例:

Rule:
    'Rule' name=ID
    ('myarray' myarray+=DOUBLE(',' myarray+=DOUBLE)*)? &
    'end' 'Rule'
;

terminal DOUBLE returns ecore::EDouble:
    '-'? (("." INT) |
    (INT ("." (INT)?)? (("e" | "E") ("+" | "-")? INT)?))
;

当我通过Xtend生成时,例如值1,2,3,输出为[1,2,3],但我想跳过方括号并获得输出1,2,3

怎么可能?

1 个答案:

答案 0 :(得分:2)

只需使用适当的方法输出列表

e.g。

'''«myarray.join(",")»'''

'''«FOR e : myarray SEPARATOR ","»«e»«ENDFOR»'''