Xtext 脚本中的预定义定义

Predefined definitions in Xtext script

我有以下 Xtext 语法:

grammar org.xtext.example.mydsl.MyDsl with org.eclipse.xtext.common.Terminals

generate myDsl "http://www.xtext.org/example/mydsl/MyDsl"

Model:
    defines+=Define*
    usages+=Usage*
;

Define:
    'define' name=ID
;

Usage:
    'usage' name=[Define]
;

并且用户的 my.mydsl 运行良好:

define first

usage first

现在,我想将定义与用法分开。具体来说,要求是将一组定义放入名为“defs1.mydsl”的文件中,将另一组(不同的)定义放入名为“defs2.mydsl”的文件中。目的是将它们作为只读定义提供,并使它们成为 Eclipse Xtext 插件的一部分。

用户可编辑的文件将仅包含“使用”和“用法”指令:

use "defs2.mydsl"

usage second

你能描述一下实现这个我应该遵循的步骤吗?

附加问题 – 我可以限制用户仅使用“use”和“usage”指令吗?

谢谢!

Christian at Eclipse Community Forum回答了问题