public class ExceptionAggregator
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
private class |
ExceptionAggregator.ByTarget |
private static class |
ExceptionAggregator.CompareExceptionTablesByRange |
private static class |
ExceptionAggregator.ValidException |
Modifier and Type | Field and Description |
---|---|
private boolean |
aggressiveAggregate |
private boolean |
aggressiveAggregate2 |
private java.util.List<ExceptionGroup> |
exceptionsByRange |
private java.util.List<Op01WithProcessedDataAndByteJumps> |
instrs |
private java.util.Map<java.lang.Integer,java.lang.Integer> |
lutByOffset |
private boolean |
removedLoopingExceptions |
Constructor and Description |
---|
ExceptionAggregator(java.util.List<ExceptionTableEntry> rawExceptions,
BlockIdentifierFactory blockIdentifierFactory,
java.util.Map<java.lang.Integer,java.lang.Integer> lutByOffset,
java.util.List<Op01WithProcessedDataAndByteJumps> instrs,
Options options,
ConstantPool cp,
DecompilerComments comments) |
Modifier and Type | Method and Description |
---|---|
void |
aggressiveImpossiblePruning() |
void |
aggressiveRethrowPruning() |
private static int |
canExpandTryBy(int idx,
java.util.List<Op01WithProcessedDataAndByteJumps> statements) |
private boolean |
canExtendTo(ExceptionTableEntry a,
ExceptionTableEntry b,
DecompilerComments comments) |
java.util.List<ExceptionGroup> |
getExceptionsGroups() |
boolean |
RemovedLoopingExceptions() |
void |
removeSynchronisedHandlers(java.util.Map<java.lang.Integer,java.lang.Integer> lutByIdx) |
private final java.util.List<ExceptionGroup> exceptionsByRange
private final java.util.Map<java.lang.Integer,java.lang.Integer> lutByOffset
private final java.util.List<Op01WithProcessedDataAndByteJumps> instrs
private final boolean aggressiveAggregate
private final boolean aggressiveAggregate2
private final boolean removedLoopingExceptions
public ExceptionAggregator(java.util.List<ExceptionTableEntry> rawExceptions, BlockIdentifierFactory blockIdentifierFactory, java.util.Map<java.lang.Integer,java.lang.Integer> lutByOffset, java.util.List<Op01WithProcessedDataAndByteJumps> instrs, Options options, ConstantPool cp, DecompilerComments comments)
private boolean canExtendTo(ExceptionTableEntry a, ExceptionTableEntry b, DecompilerComments comments)
private static int canExpandTryBy(int idx, java.util.List<Op01WithProcessedDataAndByteJumps> statements)
public java.util.List<ExceptionGroup> getExceptionsGroups()
public void removeSynchronisedHandlers(java.util.Map<java.lang.Integer,java.lang.Integer> lutByIdx)
public void aggressiveRethrowPruning()
public void aggressiveImpossiblePruning()
public boolean RemovedLoopingExceptions()