Class ExceptionRewriters
- java.lang.Object
-
- org.benf.cfr.reader.bytecode.analysis.opgraph.op3rewriters.ExceptionRewriters
-
public class ExceptionRewriters extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
ExceptionRewriters.SingleExceptionAddressing
-
Constructor Summary
Constructors Constructor Description ExceptionRewriters()
-
Method Summary
-
-
-
Method Detail
-
eliminateCatchTemporaries
static java.util.List<Op03SimpleStatement> eliminateCatchTemporaries(java.util.List<Op03SimpleStatement> statements)
-
eliminateCatchTemporary
private static boolean eliminateCatchTemporary(Op03SimpleStatement catchh)
-
identifyCatchBlocks
static void identifyCatchBlocks(java.util.List<Op03SimpleStatement> in, BlockIdentifierFactory blockIdentifierFactory)
-
identifyCatchBlock
private static void identifyCatchBlock(Op03SimpleStatement start, BlockIdentifier blockIdentifier, java.util.List<Op03SimpleStatement> statements)
-
combineTryCatchBlocks
static void combineTryCatchBlocks(java.util.List<Op03SimpleStatement> in)
-
getTries
private static java.util.List<Op03SimpleStatement> getTries(java.util.List<Op03SimpleStatement> in)
-
combineTryCatchBlocks
private static void combineTryCatchBlocks(Op03SimpleStatement tryStatement)
-
insertBlockPadding
private static Op03SimpleStatement insertBlockPadding(java.lang.String comment, Op03SimpleStatement insertAfter, Op03SimpleStatement insertBefore, BlockIdentifier blockIdentifier, java.util.List<Op03SimpleStatement> statements)
-
extractExceptionMiddle
static void extractExceptionMiddle(java.util.List<Op03SimpleStatement> in)
-
handleEmptyTries
public static void handleEmptyTries(java.util.List<Op03SimpleStatement> in)
-
getFirstByBlock
private static java.util.Map<BlockIdentifier,Op03SimpleStatement> getFirstByBlock(java.util.List<Op03SimpleStatement> in)
-
getSingleTryCatch
private static ExceptionRewriters.SingleExceptionAddressing getSingleTryCatch(Op03SimpleStatement trystm, java.util.List<Op03SimpleStatement> statements)
-
extractExceptionMiddle
private static boolean extractExceptionMiddle(Op03SimpleStatement trystm, java.util.List<Op03SimpleStatement> statements, ExceptionRewriters.SingleExceptionAddressing trycatch)
-
extractCatchEnd
private static void extractCatchEnd(java.util.List<Op03SimpleStatement> statements, ExceptionRewriters.SingleExceptionAddressing trycatch)
-
getLinearScannedBlock
private static LinearScannedBlock getLinearScannedBlock(java.util.List<Op03SimpleStatement> statements, int idx, Op03SimpleStatement stm, BlockIdentifier blockIdentifier, boolean prefix)
-
-