Package proguard.evaluation
Class BasicInvocationUnit
java.lang.Object
proguard.evaluation.SimplifiedInvocationUnit
proguard.evaluation.BasicInvocationUnit
- All Implemented Interfaces:
ConstantVisitor,MemberVisitor,ParameterVisitor,InvocationUnit
- Direct Known Subclasses:
ExecutingInvocationUnit
public class BasicInvocationUnit
extends SimplifiedInvocationUnit
implements InvocationUnit, MemberVisitor
This
InvocationUnit sets up the variables for entering a method, and it updates the stack
for the invocation of a class member, using simple values.-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionBasicInvocationUnit(ValueFactory valueFactory) Creates a new BasicInvocationUnit with the given value factory. -
Method Summary
Modifier and TypeMethodDescriptiongetExceptionValue(Clazz clazz, ClassConstant catchClassConstant) Returns the value of the specified exception.getFieldClassValue(Clazz clazz, FieldrefConstant fieldrefConstant, String type) Returns the class though which the specified field is accessed.getFieldValue(Clazz clazz, FieldrefConstant fieldrefConstant, String type) Returns the value of the specified field.getMethodParameterValue(Clazz clazz, Method method, int parameterIndex, String type, Clazz referencedClass) Returns the value of the specified method parameter.getMethodReturnValue(Clazz clazz, AnyMethodrefConstant anyMethodrefConstant, String type) Returns the return value of the specified method.getMethodReturnValue(Clazz clazz, InvokeDynamicConstant invokeDynamicConstant, String type) Returns the return value of the specified method.voidsetFieldClassValue(Clazz clazz, FieldrefConstant fieldrefConstant, ReferenceValue value) Sets the class through which the specified field is accessed.voidsetFieldValue(Clazz clazz, FieldrefConstant fieldrefConstant, Value value) Sets the value of the specified field.voidsetMethodParameterValue(Clazz clazz, AnyMethodrefConstant anyMethodrefConstant, int parameterIndex, Value value) Sets the value of the specified method parameter.voidsetMethodReturnValue(Clazz clazz, Method method, Value value) Sets the return value of the specified method.voidvisitLibraryField(LibraryClass programClass, LibraryField libraryField) voidvisitLibraryMethod(LibraryClass libraryClass, LibraryMethod libraryMethod) voidvisitProgramField(ProgramClass programClass, ProgramField programField) voidvisitProgramMethod(ProgramClass programClass, ProgramMethod programMethod) Methods inherited from class proguard.evaluation.SimplifiedInvocationUnit
enterExceptionHandler, enterMethod, exitMethod, invokeMember, methodMayHaveSideEffects, visitAnyMethodrefConstant, visitFieldrefConstant, visitInvokeDynamicConstant, visitParameterMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface proguard.classfile.constant.visitor.ConstantVisitor
visitAnyConstant, visitAnyRefConstant, visitClassConstant, visitDoubleConstant, visitDynamicConstant, visitFloatConstant, visitIntegerConstant, visitInterfaceMethodrefConstant, visitLongConstant, visitMethodHandleConstant, visitMethodrefConstant, visitMethodTypeConstant, visitModuleConstant, visitNameAndTypeConstant, visitPackageConstant, visitPrimitiveArrayConstant, visitStringConstant, visitUtf8ConstantMethods inherited from interface proguard.evaluation.InvocationUnit
enterExceptionHandler, enterMethod, exitMethod, invokeMemberMethods inherited from interface proguard.classfile.visitor.MemberVisitor
visitAnyMember, visitLibraryMember, visitProgramMember
-
Field Details
-
valueFactory
-
-
Constructor Details
-
BasicInvocationUnit
Creates a new BasicInvocationUnit with the given value factory.
-
-
Method Details
-
getExceptionValue
Description copied from class:SimplifiedInvocationUnitReturns the value of the specified exception.- Specified by:
getExceptionValuein classSimplifiedInvocationUnit
-
setFieldClassValue
public void setFieldClassValue(Clazz clazz, FieldrefConstant fieldrefConstant, ReferenceValue value) Description copied from class:SimplifiedInvocationUnitSets the class through which the specified field is accessed.- Specified by:
setFieldClassValuein classSimplifiedInvocationUnit
-
getFieldClassValue
Description copied from class:SimplifiedInvocationUnitReturns the class though which the specified field is accessed.- Specified by:
getFieldClassValuein classSimplifiedInvocationUnit
-
setFieldValue
Description copied from class:SimplifiedInvocationUnitSets the value of the specified field.- Specified by:
setFieldValuein classSimplifiedInvocationUnit
-
getFieldValue
Description copied from class:SimplifiedInvocationUnitReturns the value of the specified field.- Specified by:
getFieldValuein classSimplifiedInvocationUnit
-
setMethodParameterValue
public void setMethodParameterValue(Clazz clazz, AnyMethodrefConstant anyMethodrefConstant, int parameterIndex, Value value) Description copied from class:SimplifiedInvocationUnitSets the value of the specified method parameter.- Specified by:
setMethodParameterValuein classSimplifiedInvocationUnit
-
getMethodParameterValue
public Value getMethodParameterValue(Clazz clazz, Method method, int parameterIndex, String type, Clazz referencedClass) Description copied from class:SimplifiedInvocationUnitReturns the value of the specified method parameter.- Specified by:
getMethodParameterValuein classSimplifiedInvocationUnit
-
setMethodReturnValue
Description copied from class:SimplifiedInvocationUnitSets the return value of the specified method.- Specified by:
setMethodReturnValuein classSimplifiedInvocationUnit
-
getMethodReturnValue
public Value getMethodReturnValue(Clazz clazz, AnyMethodrefConstant anyMethodrefConstant, String type) Description copied from class:SimplifiedInvocationUnitReturns the return value of the specified method.- Specified by:
getMethodReturnValuein classSimplifiedInvocationUnit
-
getMethodReturnValue
public Value getMethodReturnValue(Clazz clazz, InvokeDynamicConstant invokeDynamicConstant, String type) Returns the return value of the specified method.- Specified by:
getMethodReturnValuein classSimplifiedInvocationUnit
-
visitProgramField
- Specified by:
visitProgramFieldin interfaceMemberVisitor
-
visitProgramMethod
- Specified by:
visitProgramMethodin interfaceMemberVisitor
-
visitLibraryField
- Specified by:
visitLibraryFieldin interfaceMemberVisitor
-
visitLibraryMethod
- Specified by:
visitLibraryMethodin interfaceMemberVisitor
-