BraceStyleListener.java 文件源码

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

项目:tailor 作者:
private void verifyEnumBraceStyle(ParserRuleContext ctx) {
    for (ParseTree child : ctx.children) {
        if (child instanceof TerminalNodeImpl && child.getText().equals("{")) {
            Token openBrace = ((TerminalNodeImpl) child).getSymbol();
            Location openBraceLocation = ListenerUtil.getTokenLocation(openBrace);
            ParserRuleContext leftSibling = (ParserRuleContext) ParseTreeUtil.getLeftSibling(child);
            Location leftSiblingLocation = ListenerUtil.getContextStopLocation(leftSibling);

            if (openBraceLocation.line != leftSiblingLocation.line) {
                printer.warn(Rules.BRACE_STYLE, Messages.ENUM + Messages.OPEN_BRACE_STYLE, openBraceLocation);
            } else if (checkLeftSpaces(leftSibling.getStop(), openBrace, 1)) {
                printer.error(Rules.BRACE_STYLE, Messages.OPEN_BRACE + Messages.SPACE_BEFORE, openBraceLocation);
            }
            break;
        }
    }

    ParseTree lastChild = ParseTreeUtil.getLastChild(ctx);
    verifyCloseBraceStyle(lastChild, ParseTreeUtil.getLeftSibling(lastChild), Messages.ENUM);
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号