Xtext:在一个项目中定义2个DSL

时间:2016-05-25 21:19:39

标签: eclipse xtext

如何在一个Eclipse项目中定义两个DSL?

第一个DSL用作输入语法,用户指定设计。设计需要转换为不同的语言。不同的语言由第二个DSL定义。对于转换,我打算使用Epsilon转换语言(ETL)。

1 个答案:

答案 0 :(得分:1)

在一个项目中有两个dsl对于您的用例不是必需的。如果你想这样做,你可以在工作流程中添加多个语言部分,如

    language = StandardLanguage {
        name = "org.xtext.example.mydsl.MyDsl"
        fileExtensions = "mydsl"

        serializer = {
            generateStub = false
        }
        validator = {
            // composedCheck = "org.eclipse.xtext.validation.NamesAreUniqueValidator"
        }
    }

    language = StandardLanguage {
        name = "org.xtext.example.otherdsl.OtherDsl"
        fileExtensions = "mydsl2"

        serializer = {
            generateStub = false
        }
        validator = {
            // composedCheck = "org.eclipse.xtext.validation.NamesAreUniqueValidator"
        }
    }