Space 天狼星错误
Space error in sirius
我创建了我的 xtext 语法,现在我使用 sirius 建模,我遇到的问题是当我从调色板创建一个元素时(例如,我创建一个按钮),在采用 xtext 扩展名的文件中在我的例子中 'instance.pfe' 我发现了一个 space 错误,建模给出的 space 在语法中是不一样的。
一直不明白这个错误是从哪里来的,以及如何解决的,谢谢大家的帮助。
这是一个例子
您不应在关键字中使用 space。这将产生各种有线副作用,就像您所面临的那样。
所以不用
SomeRule: 'somekeyword : ' somevalue=INT
你应该使用
SomeRule: 'somekeyword' ':' somevalue=INT
如果你真的想强制执行 space 然后为它引入一个终端
terminal SPACE: ' ';
SomeRule: 'somekeyword' SPACE ':' SPACEsomevalue=INT
更新:启用class拆分
parserGenerator = {
options = {
classSplitting = true
}
}
我创建了我的 xtext 语法,现在我使用 sirius 建模,我遇到的问题是当我从调色板创建一个元素时(例如,我创建一个按钮),在采用 xtext 扩展名的文件中在我的例子中 'instance.pfe' 我发现了一个 space 错误,建模给出的 space 在语法中是不一样的。 一直不明白这个错误是从哪里来的,以及如何解决的,谢谢大家的帮助。
这是一个例子
您不应在关键字中使用 space。这将产生各种有线副作用,就像您所面临的那样。
所以不用
SomeRule: 'somekeyword : ' somevalue=INT
你应该使用
SomeRule: 'somekeyword' ':' somevalue=INT
如果你真的想强制执行 space 然后为它引入一个终端
terminal SPACE: ' ';
SomeRule: 'somekeyword' SPACE ':' SPACEsomevalue=INT
更新:启用class拆分
parserGenerator = {
options = {
classSplitting = true
}
}