soot.jimple.toolkits.pointer.nativemethods
Class JavaLangReflectMethodNative
java.lang.Object
soot.jimple.toolkits.pointer.nativemethods.NativeMethodClass
soot.jimple.toolkits.pointer.nativemethods.JavaLangReflectMethodNative
public class JavaLangReflectMethodNative
- extends NativeMethodClass
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
JavaLangReflectMethodNative
public JavaLangReflectMethodNative(NativeHelper helper)
simulateMethod
public void simulateMethod(SootMethod method,
ReferenceVariable thisVar,
ReferenceVariable returnVar,
ReferenceVariable[] params)
- Implements the abstract method simulateMethod.
It distributes the request to the corresponding methods
by signatures.
- Specified by:
simulateMethod
in class NativeMethodClass
java_lang_reflect_Method_invoke
public void java_lang_reflect_Method_invoke(SootMethod method,
ReferenceVariable thisVar,
ReferenceVariable returnVar,
ReferenceVariable[] params)
- nvokes the underlying method represented by this Method object,
on the specified object with the specified parameters.
Individual parameters are automatically unwrapped to match
primitive formal parameters, and both primitive and reference
parameters are subject to widening conversions as necessary. The
value returned by the underlying method is automatically wrapped
in an object if it has a primitive type.
Method invocation proceeds with the following steps, in order:
If the underlying method is static, then the specified obj
argument is ignored. It may be null.
NOTE: @this is an variable pointing to method objects,