LexerATNSimulator.java 文件源码

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

项目:Scratch-ApuC 作者:
protected void addDFAEdge(@NotNull DFAState p, int t, @NotNull DFAState q) {
    if (t < MIN_DFA_EDGE || t > MAX_DFA_EDGE) {
        // Only track edges within the DFA bounds
        return;
    }

    if ( debug ) {
        System.out.println("EDGE "+p+" -> "+q+" upon "+((char)t));
    }

    synchronized (p) {
        if ( p.edges==null ) {
            //  make room for tokens 1..n and -1 masquerading as index 0
            p.edges = new DFAState[MAX_DFA_EDGE-MIN_DFA_EDGE+1];
        }
        p.edges[t - MIN_DFA_EDGE] = q; // connect
    }
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号