首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从grako翻译时XText中的节点标签/密钥

从grako翻译时XText中的节点标签/密钥
EN

Stack Overflow用户
提问于 2016-04-21 19:58:24
回答 1查看 52关注 0票数 0

在grako中,可以使用下面的name:e将e的结果添加到AST中,使用名称作为键。例如

代码语言:javascript
复制
var_def
    =
    var+:ID {',' var+:ID}*

把这个翻译成Xtext会有什么好处呢?我试过了

代码语言:javascript
复制
var_def:
     var=ID (',' var=ID)*;

它没有失败,但正在引发以下警告

代码语言:javascript
复制
Multiple markers at this line
- The possibly assigned value of feature 'var' may be overridden
   by subsequent assignments.
- This assignment will override the possibly assigned value of
   feature 'var'.

我想我是在模仿name的行为,但是没有太多的成功。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-25 07:08:16

对于您的解决方案,AST中只有最后一个ID可用。我认为var应该是一个多值特性,可以保存所有I,而不仅仅是最后一个I。这可以表示为

代码语言:javascript
复制
var_def:
    var+=ID (',' var+=ID)*;

在最终的AST中,var是一个ID列表。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36779299

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档