|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectproguard.classfile.util.SimplifiedVisitor
proguard.optimize.peephole.ReachableCodeMarker
public class ReachableCodeMarker
This AttributeVisitor finds all instruction offsets, branch targets, and exception targets in the CodeAttribute objects that it visits.
| Constructor Summary | |
|---|---|
ReachableCodeMarker()
|
|
| Method Summary | |
|---|---|
boolean |
isReachable(int offset)
Returns whether the instruction at the given offset is reachable in the CodeAttribute that was visited most recently. |
boolean |
isReachable(int startOffset,
int endOffset)
Returns whether any of the instructions at the given offsets are reachable in the CodeAttribute that was visited most recently. |
void |
visitAnyAttribute(Clazz clazz,
Attribute attribute)
Visit any type of attribute. |
void |
visitAnySwitchInstruction(Clazz clazz,
Method method,
CodeAttribute codeAttribute,
int offset,
SwitchInstruction switchInstruction)
Visits either type of SwitchInstruction. |
void |
visitBranchInstruction(Clazz clazz,
Method method,
CodeAttribute codeAttribute,
int offset,
BranchInstruction branchInstruction)
|
void |
visitCodeAttribute(Clazz clazz,
Method method,
CodeAttribute codeAttribute)
|
void |
visitConstantInstruction(Clazz clazz,
Method method,
CodeAttribute codeAttribute,
int offset,
ConstantInstruction constantInstruction)
|
void |
visitExceptionInfo(Clazz clazz,
Method method,
CodeAttribute codeAttribute,
ExceptionInfo exceptionInfo)
|
void |
visitSimpleInstruction(Clazz clazz,
Method method,
CodeAttribute codeAttribute,
int offset,
SimpleInstruction simpleInstruction)
|
void |
visitVariableInstruction(Clazz clazz,
Method method,
CodeAttribute codeAttribute,
int offset,
VariableInstruction variableInstruction)
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface proguard.classfile.instruction.visitor.InstructionVisitor |
|---|
visitLookUpSwitchInstruction, visitTableSwitchInstruction |
| Constructor Detail |
|---|
public ReachableCodeMarker()
| Method Detail |
|---|
public boolean isReachable(int offset)
public boolean isReachable(int startOffset,
int endOffset)
public void visitAnyAttribute(Clazz clazz,
Attribute attribute)
SimplifiedVisitor
visitAnyAttribute in class SimplifiedVisitor
public void visitCodeAttribute(Clazz clazz,
Method method,
CodeAttribute codeAttribute)
visitCodeAttribute in interface AttributeVisitorvisitCodeAttribute in class SimplifiedVisitor
public void visitSimpleInstruction(Clazz clazz,
Method method,
CodeAttribute codeAttribute,
int offset,
SimpleInstruction simpleInstruction)
visitSimpleInstruction in interface InstructionVisitorvisitSimpleInstruction in class SimplifiedVisitor
public void visitConstantInstruction(Clazz clazz,
Method method,
CodeAttribute codeAttribute,
int offset,
ConstantInstruction constantInstruction)
visitConstantInstruction in interface InstructionVisitorvisitConstantInstruction in class SimplifiedVisitor
public void visitVariableInstruction(Clazz clazz,
Method method,
CodeAttribute codeAttribute,
int offset,
VariableInstruction variableInstruction)
visitVariableInstruction in interface InstructionVisitorvisitVariableInstruction in class SimplifiedVisitor
public void visitBranchInstruction(Clazz clazz,
Method method,
CodeAttribute codeAttribute,
int offset,
BranchInstruction branchInstruction)
visitBranchInstruction in interface InstructionVisitorvisitBranchInstruction in class SimplifiedVisitor
public void visitAnySwitchInstruction(Clazz clazz,
Method method,
CodeAttribute codeAttribute,
int offset,
SwitchInstruction switchInstruction)
SimplifiedVisitor
visitAnySwitchInstruction in class SimplifiedVisitor
public void visitExceptionInfo(Clazz clazz,
Method method,
CodeAttribute codeAttribute,
ExceptionInfo exceptionInfo)
visitExceptionInfo in interface ExceptionInfoVisitor
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||