Class JavaLangReflectProxyNative
- java.lang.Object
-
- soot.jimple.toolkits.pointer.nativemethods.NativeMethodClass
-
- soot.jimple.toolkits.pointer.nativemethods.JavaLangReflectProxyNative
-
public class JavaLangReflectProxyNative extends NativeMethodClass
-
-
Field Summary
-
Fields inherited from class soot.jimple.toolkits.pointer.nativemethods.NativeMethodClass
helper
-
-
Constructor Summary
Constructors Constructor Description JavaLangReflectProxyNative(NativeHelper helper)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidjava_lang_reflect_Proxy_defineClass0(SootMethod method, ReferenceVariable thisVar, ReferenceVariable returnVar, ReferenceVariable[] params)We have to assume all possible classes will be returned.voidsimulateMethod(SootMethod method, ReferenceVariable thisVar, ReferenceVariable returnVar, ReferenceVariable[] params)Implements the abstract method simulateMethod.-
Methods inherited from class soot.jimple.toolkits.pointer.nativemethods.NativeMethodClass
defaultMethod
-
-
-
-
Constructor Detail
-
JavaLangReflectProxyNative
public JavaLangReflectProxyNative(NativeHelper helper)
-
-
Method Detail
-
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:
simulateMethodin classNativeMethodClass
-
java_lang_reflect_Proxy_defineClass0
public void java_lang_reflect_Proxy_defineClass0(SootMethod method, ReferenceVariable thisVar, ReferenceVariable returnVar, ReferenceVariable[] params)
We have to assume all possible classes will be returned. But it is still possible to make a new class. NOTE: assuming a close world, and this method should not be called. private static native java.lang.Class defineClass0(java.lang.ClassLoader, java.lang.String, byte[], int, int);
-
-