AntlrUtils.java 文件源码

java
阅读 28 收藏 0 点赞 0 评论 0

项目:templates4j 作者:
public static String getNodeText(Tree t, String[] ruleNames, String[] tokenNames) {
    if (ruleNames != null) {
        if (t instanceof RuleNode) {
            int ruleIndex = ((RuleNode) t).getRuleContext().getRuleIndex();
            return ruleNames[ruleIndex];
        } else if (t instanceof ErrorNode) {
            return t.toString();
        } else if (t instanceof TerminalNode) {
            Token symbol = ((TerminalNode) t).getSymbol();
            if (symbol != null) {
                return "'" + symbol.getText() + "'";
            }
        }
    }
    // no recog for rule names
    Object payload = t.getPayload();
    if (payload instanceof Token) {
        return ((Token) payload).getText();
    }
    return t.getPayload().toString();
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号