AstBuilderListener.java 文件源码

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

项目:intellij-plugin-v4 作者:
public AstBuilderListener(Language language, Parser parser, PsiBuilder builder) {
    this.language = language;
    this.builder = builder;

    this.tokenElementTypes = PSIElementTypeFactory.getTokenIElementTypes(language, Arrays.asList(parser.getTokenNames()));
    this.ruleElementTypes = PSIElementTypeFactory.getRuleIElementTypes(language, Arrays.asList(parser.getRuleNames()));

    for (ANTLRErrorListener listener : parser.getErrorListeners()) {
        if (listener instanceof SyntaxErrorListener) {
            syntaxErrors.addAll(((SyntaxErrorListener)listener).getSyntaxErrors());
        }
    }

    Collections.sort(syntaxErrors, new Comparator<SyntaxError>() {

        @Override
        public int compare(SyntaxError o1, SyntaxError o2) {
            return Integer.valueOf(getStart(o1)).compareTo(getStart(o2));
        }
    });
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号