proguard.optimize.evaluation
Class Processor
java.lang.Object
proguard.optimize.evaluation.Processor
- All Implemented Interfaces:
- CpInfoVisitor, InstructionVisitor
- public class Processor
- extends Object
- implements InstructionVisitor, CpInfoVisitor
This InstructionVisitor executes the instructions that it visits on a given
local variable frame and stack.
|
Constructor Summary |
Processor(proguard.optimize.evaluation.Variables variables,
proguard.optimize.evaluation.Stack stack,
BranchUnit branchUnit)
Creates a new processor that operates on the given environment. |
|
Method Summary |
void |
visitBranchInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
BranchInstruction branchInstruction)
|
void |
visitClassCpInfo(ClassFile classFile,
ClassCpInfo classCpInfo)
|
void |
visitCpInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
CpInstruction cpInstruction)
|
void |
visitDoubleCpInfo(ClassFile classFile,
DoubleCpInfo doubleCpInfo)
|
void |
visitFieldrefCpInfo(ClassFile classFile,
FieldrefCpInfo fieldrefCpInfo)
|
void |
visitFloatCpInfo(ClassFile classFile,
FloatCpInfo floatCpInfo)
|
void |
visitIntegerCpInfo(ClassFile classFile,
IntegerCpInfo integerCpInfo)
|
void |
visitInterfaceMethodrefCpInfo(ClassFile classFile,
InterfaceMethodrefCpInfo interfaceMethodrefCpInfo)
|
void |
visitLongCpInfo(ClassFile classFile,
LongCpInfo longCpInfo)
|
void |
visitLookUpSwitchInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
LookUpSwitchInstruction lookUpSwitchInstruction)
|
void |
visitMethodrefCpInfo(ClassFile classFile,
MethodrefCpInfo methodrefCpInfo)
|
void |
visitNameAndTypeCpInfo(ClassFile classFile,
NameAndTypeCpInfo nameAndTypeCpInfo)
|
void |
visitSimpleInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
SimpleInstruction simpleInstruction)
|
void |
visitStringCpInfo(ClassFile classFile,
StringCpInfo stringCpInfo)
|
void |
visitTableSwitchInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
TableSwitchInstruction tableSwitchInstruction)
|
void |
visitUtf8CpInfo(ClassFile classFile,
Utf8CpInfo utf8CpInfo)
|
void |
visitVariableInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
VariableInstruction variableInstruction)
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Processor
public Processor(proguard.optimize.evaluation.Variables variables,
proguard.optimize.evaluation.Stack stack,
BranchUnit branchUnit)
- Creates a new processor that operates on the given environment.
- Parameters:
variables - the local variable frame.stack - the local stack.branchUnit - the class that can affect the program counter.
visitSimpleInstruction
public void visitSimpleInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
SimpleInstruction simpleInstruction)
- Specified by:
visitSimpleInstruction in interface InstructionVisitor
visitCpInstruction
public void visitCpInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
CpInstruction cpInstruction)
- Specified by:
visitCpInstruction in interface InstructionVisitor
visitVariableInstruction
public void visitVariableInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
VariableInstruction variableInstruction)
- Specified by:
visitVariableInstruction in interface InstructionVisitor
visitBranchInstruction
public void visitBranchInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
BranchInstruction branchInstruction)
- Specified by:
visitBranchInstruction in interface InstructionVisitor
visitTableSwitchInstruction
public void visitTableSwitchInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
TableSwitchInstruction tableSwitchInstruction)
- Specified by:
visitTableSwitchInstruction in interface InstructionVisitor
visitLookUpSwitchInstruction
public void visitLookUpSwitchInstruction(ClassFile classFile,
MethodInfo methodInfo,
CodeAttrInfo codeAttrInfo,
int offset,
LookUpSwitchInstruction lookUpSwitchInstruction)
- Specified by:
visitLookUpSwitchInstruction in interface InstructionVisitor
visitUtf8CpInfo
public void visitUtf8CpInfo(ClassFile classFile,
Utf8CpInfo utf8CpInfo)
- Specified by:
visitUtf8CpInfo in interface CpInfoVisitor
visitNameAndTypeCpInfo
public void visitNameAndTypeCpInfo(ClassFile classFile,
NameAndTypeCpInfo nameAndTypeCpInfo)
- Specified by:
visitNameAndTypeCpInfo in interface CpInfoVisitor
visitIntegerCpInfo
public void visitIntegerCpInfo(ClassFile classFile,
IntegerCpInfo integerCpInfo)
- Specified by:
visitIntegerCpInfo in interface CpInfoVisitor
visitLongCpInfo
public void visitLongCpInfo(ClassFile classFile,
LongCpInfo longCpInfo)
- Specified by:
visitLongCpInfo in interface CpInfoVisitor
visitFloatCpInfo
public void visitFloatCpInfo(ClassFile classFile,
FloatCpInfo floatCpInfo)
- Specified by:
visitFloatCpInfo in interface CpInfoVisitor
visitDoubleCpInfo
public void visitDoubleCpInfo(ClassFile classFile,
DoubleCpInfo doubleCpInfo)
- Specified by:
visitDoubleCpInfo in interface CpInfoVisitor
visitStringCpInfo
public void visitStringCpInfo(ClassFile classFile,
StringCpInfo stringCpInfo)
- Specified by:
visitStringCpInfo in interface CpInfoVisitor
visitFieldrefCpInfo
public void visitFieldrefCpInfo(ClassFile classFile,
FieldrefCpInfo fieldrefCpInfo)
- Specified by:
visitFieldrefCpInfo in interface CpInfoVisitor
visitInterfaceMethodrefCpInfo
public void visitInterfaceMethodrefCpInfo(ClassFile classFile,
InterfaceMethodrefCpInfo interfaceMethodrefCpInfo)
- Specified by:
visitInterfaceMethodrefCpInfo in interface CpInfoVisitor
visitMethodrefCpInfo
public void visitMethodrefCpInfo(ClassFile classFile,
MethodrefCpInfo methodrefCpInfo)
- Specified by:
visitMethodrefCpInfo in interface CpInfoVisitor
visitClassCpInfo
public void visitClassCpInfo(ClassFile classFile,
ClassCpInfo classCpInfo)
- Specified by:
visitClassCpInfo in interface CpInfoVisitor