proguard.optimize.evaluation
Class LoadingInvocationUnit

java.lang.Object
  extended by proguard.classfile.util.SimplifiedVisitor
      extended by proguard.evaluation.BasicInvocationUnit
          extended by proguard.optimize.evaluation.LoadingInvocationUnit
All Implemented Interfaces:
ConstantVisitor, MemberVisitor, InvocationUnit

public class LoadingInvocationUnit
extends BasicInvocationUnit

This InvocationUbit loads parameter values and return values that were previously stored with the methods that are invoked.

See Also:
StoringInvocationUnit

Constructor Summary
LoadingInvocationUnit()
           
 
Method Summary
protected  Value getFieldClassValue(Clazz clazz, RefConstant refConstant, java.lang.String type)
           
protected  Value getFieldValue(Clazz clazz, RefConstant refConstant, java.lang.String type)
           
protected  Value getMethodParameterValue(Clazz clazz, Method method, int parameterIndex, java.lang.String type, Clazz referencedClass)
           
protected  Value getMethodReturnValue(Clazz clazz, RefConstant refConstant, java.lang.String type)
           
 
Methods inherited from class proguard.evaluation.BasicInvocationUnit
enterMethod, exitMethod, invokeMember, setFieldClassValue, setFieldValue, setMethodParameterValue, setMethodReturnValue, visitAnyMethodrefConstant, visitFieldrefConstant, visitLibraryField, visitLibraryMethod, visitProgramField, visitProgramMethod
 
Methods inherited from class proguard.classfile.util.SimplifiedVisitor
visitAnnotation, visitAnnotation, visitAnnotation, visitAnnotation, visitAnnotation, visitAnnotationDefaultAttribute, visitAnnotationElementValue, visitAnyAnnotationsAttribute, visitAnyAttribute, visitAnyClass, visitAnyConstant, visitAnyElementValue, visitAnyInstruction, visitAnyMember, visitAnyParameterAnnotationsAttribute, visitAnyRefConstant, visitAnyStackMapFrame, visitAnySwitchInstruction, visitAnyVerificationType, visitArrayElementValue, visitBranchInstruction, visitClassConstant, visitClassElementValue, visitCodeAttribute, visitConstantElementValue, visitConstantInstruction, visitConstantValueAttribute, visitDeprecatedAttribute, visitDeprecatedAttribute, visitDeprecatedAttribute, visitDeprecatedAttribute, visitDoubleConstant, visitDoubleType, visitEnclosingMethodAttribute, visitEnumConstantElementValue, visitExceptionsAttribute, visitFloatConstant, visitFloatType, visitFullFrame, visitInnerClassesAttribute, visitIntegerConstant, visitIntegerType, visitInterfaceMethodrefConstant, visitLessZeroFrame, visitLibraryClass, visitLibraryMember, visitLineNumberTableAttribute, visitLocalVariableTableAttribute, visitLocalVariableTypeTableAttribute, visitLongConstant, visitLongType, visitLookUpSwitchInstruction, visitMethodrefConstant, visitMoreZeroFrame, visitNameAndTypeConstant, visitNullType, visitObjectType, visitProgramClass, visitProgramMember, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleAnnotationsAttribute, visitRuntimeInvisibleParameterAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleAnnotationsAttribute, visitRuntimeVisibleParameterAnnotationsAttribute, visitSameOneFrame, visitSameZeroFrame, visitSignatureAttribute, visitSignatureAttribute, visitSignatureAttribute, visitSignatureAttribute, visitSimpleInstruction, visitSourceDirAttribute, visitSourceFileAttribute, visitStackDoubleType, visitStackFloatType, visitStackIntegerType, visitStackLongType, visitStackMapAttribute, visitStackMapTableAttribute, visitStackNullType, visitStackObjectType, visitStackTopType, visitStackUninitializedThisType, visitStackUninitializedType, visitStringConstant, visitSyntheticAttribute, visitSyntheticAttribute, visitSyntheticAttribute, visitSyntheticAttribute, visitTableSwitchInstruction, visitTopType, visitUninitializedThisType, visitUninitializedType, visitUnknownAttribute, visitUtf8Constant, visitVariableInstruction, visitVariablesDoubleType, visitVariablesFloatType, visitVariablesIntegerType, visitVariablesLongType, visitVariablesNullType, visitVariablesObjectType, visitVariablesTopType, visitVariablesUninitializedThisType, visitVariablesUninitializedType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface proguard.classfile.constant.visitor.ConstantVisitor
visitClassConstant, visitDoubleConstant, visitFloatConstant, visitIntegerConstant, visitInterfaceMethodrefConstant, visitLongConstant, visitMethodrefConstant, visitNameAndTypeConstant, visitStringConstant, visitUtf8Constant
 

Constructor Detail

LoadingInvocationUnit

public LoadingInvocationUnit()
Method Detail

getFieldClassValue

protected Value getFieldClassValue(Clazz clazz,
                                   RefConstant refConstant,
                                   java.lang.String type)
Overrides:
getFieldClassValue in class BasicInvocationUnit

getFieldValue

protected Value getFieldValue(Clazz clazz,
                              RefConstant refConstant,
                              java.lang.String type)
Overrides:
getFieldValue in class BasicInvocationUnit

getMethodParameterValue

protected Value getMethodParameterValue(Clazz clazz,
                                        Method method,
                                        int parameterIndex,
                                        java.lang.String type,
                                        Clazz referencedClass)
Overrides:
getMethodParameterValue in class BasicInvocationUnit

getMethodReturnValue

protected Value getMethodReturnValue(Clazz clazz,
                                     RefConstant refConstant,
                                     java.lang.String type)
Overrides:
getMethodReturnValue in class BasicInvocationUnit