public void enterStatus(Parser.Context ctx)
{
}
Parser.Context ctx没有像getLinuNumber()这样的方法。我怎么能得到解析器行号?
答案 0 :(得分:1)
您可以使用 ctx.getStart()。getLine()
public Token getStart()在此上下文中获取初始标记。注意 从开始到结束的范围是包容性的,因此适用于那些规则 不消耗任何东西(例如,零长度或错误产生) 此令牌可能超过停止
来自文档:http://www.antlr.org/api/Java/org/antlr/v4/runtime/ParserRuleContext.html#getStart()
和
int getLine()此标记的第一个字符所在的行号 匹配,line = 1..n
来自:http://www.antlr.org/api/Java/org/antlr/v4/runtime/Token.html#getLine()