Search in sources :

Example 1 with CatchBlock

use of org.candle.decompiler.ast.tcf.CatchBlock in project candle-decompiler by bradsdavis.

the class BlockVisitor method visitCatchIntermediate.

@Override
public void visitCatchIntermediate(CatchIntermediate line) {
    if (seen.contains(line)) {
        // do nothing.
        return;
    } else {
        seen.add(line);
    }
    CatchBlock catchBlock = new CatchBlock(line);
    this.current.addChild(catchBlock);
    this.current = catchBlock;
    // children...
    List<AbstractIntermediate> successors = getUnseenSuccessors(line);
    for (AbstractIntermediate successor : successors) {
        successor.accept(this);
    }
    if (this.current == catchBlock) {
        moveUp();
    }
}
Also used : AbstractIntermediate(org.candle.decompiler.intermediate.code.AbstractIntermediate) CatchBlock(org.candle.decompiler.ast.tcf.CatchBlock)

Aggregations

CatchBlock (org.candle.decompiler.ast.tcf.CatchBlock)1 AbstractIntermediate (org.candle.decompiler.intermediate.code.AbstractIntermediate)1