Parsing S属性语法可以指定AST?

Parsing S属性语法可以指定AST?,parsing,antlr,grammar,abstract-syntax-tree,context-free-grammar,Parsing,Antlr,Grammar,Abstract Syntax Tree,Context Free Grammar,据我所知,在中使用返回值和元素标签足以构建AST。e、 g r returns [int c, String d] : a='class' b=ID ... {$c=$b; $d=$a;} 对的这种扩展称为a吗 这样构建AST是常见的吗 我特别感兴趣的是基于这种属性化语法的AST(不是解析树)构建。将属性限制为纯赋值有什么好处吗?(没有函数调用,例如,$c=fun($a))我已经解释了我无法解决的问题。S-attributed语法只是指只使用其值来自非终结符子级的属性的

据我所知,在中使用返回值和元素标签足以构建AST。e、 g

r returns [int c, String d] :   
        a='class' b=ID  ... {$c=$b; $d=$a;}
对的这种扩展称为a吗

这样构建AST是常见的吗


我特别感兴趣的是基于这种属性化语法的AST(不是解析树)构建。将属性限制为纯赋值有什么好处吗?(没有函数调用,例如,
$c=fun($a)
)我已经解释了我无法解决的问题。

S-attributed语法只是指只使用其值来自非终结符子级的属性的语法。如果你有S:A;作为语法,a可以将属性(值)传递给S,但S不能将属性传递给a。