use of org.candle.decompiler.intermediate.graph.enhancer.If in project candle-decompiler by bradsdavis.
the class ClassIntermediateVisitor method processIntermediate.
public void processIntermediate(IntermediateGraphContext igc) {
List<GraphIntermediateVisitor> enhancers = new LinkedList<GraphIntermediateVisitor>();
enhancers.add(new IntermediateGraphWriter(igc, "ibefore.dot"));
enhancers.add(new MergeConditionExpression(igc));
enhancers.add(new ConstantArrayCompressor(igc));
enhancers.add(new ConditionToWhileLoop(igc));
enhancers.add(new ConditionExternalToWhileLoop(igc));
enhancers.add(new FinallyRangeVisitor(igc));
enhancers.add(new CatchUpperRangeVisitor(igc));
enhancers.add(new RetractDuplicateFinally(igc));
enhancers.add(new RetractOrphanGoto(igc));
enhancers.add(new WhileToForLoopIncrement(igc));
enhancers.add(new WhileToForLoopIterator(igc));
enhancers.add(new ArrayForToEnhancedFor(igc));
enhancers.add(new If(igc));
enhancers.add(new ElseIf(igc));
enhancers.add(new Else(igc));
enhancers.add(new MultiConditionalToSwitchIntermediate(igc));
enhancers.add(new SwitchRangeVisitor(igc));
enhancers.add(new SwitchGotoToBreak(igc));
enhancers.add(new CaseEndRangeIntermediateVisitor(igc));
enhancers.add(new RemoveCaseToCaseEdge(igc));
enhancers.add(new WhileRangeVisitor(igc));
enhancers.add(new IfLowerRangeVisitor(igc));
enhancers.add(new Try(igc));
enhancers.add(new RemoveImpliedVoidReturn(igc));
enhancers.add(new ExpressionEnhancer(igc));
enhancers.add(new IntermediateGraphWriter(igc, "iafter.dot"));
for (GraphIntermediateVisitor giv : enhancers) {
giv.process();
}
}
Aggregations