【发布时间】:2015-05-07 22:26:48
【问题描述】:
我有 DSL 实例,我正在尝试对它们进行序列化。我有以下语法:
Database returns schema::Database:
'database' name=EString '{'
(keys+=Key ( "," keys+=Key)*)? )
('structures''{' structureList+=(Group|Template)(','structureList+=(Group|Template))* '}')?
'}'
;
Group returns schema::Group:
structureType=StructureType name=EString
('{'
('table' '{' tableFieldList=FieldList '}')?)
'}')
;
首先,序列化程序会忽略键的逗号,并且不会在“键”之间生成逗号。第二个问题是“结构”这个关键字是为每个结构生成的。当我在 DSL 编辑器中导入文件时,它们无效,因此语法工作正常,但序列化程序不行。知道如何解决这个问题吗?
【问题讨论】:
标签: serialization dsl xtext