我有解析器规则
s+=statement
我的声明规则声明为
statement returns [List<CommonTree> myList]
Antlr3针对此生成的内容如下:
state._fsp--;
if (state.failed) return retval;
if ( state.backtracking==0 ) stream_plsql_statement.add(s.getTree());
if (list_s==null) list_s=new ArrayList();
list_s.add(s.getTree());
这意味着s + = ...转换为list_s的东西。 问题是我需要访问从基础规则返回的列表。我试过了
$s.myList
但它会出错并且代码未编译。
任何人都可以指导我如何访问此列表。