我想在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
。
怎么可能?
答案 0 :(得分:2)
只需使用适当的方法输出列表
e.g。
'''«myarray.join(",")»'''
或
'''«FOR e : myarray SEPARATOR ","»«e»«ENDFOR»'''