soot.jimple.toolkits.pointer.nativemethods
Class JavaLangThreadNative

java.lang.Object
  |
  +--soot.jimple.toolkits.pointer.nativemethods.NativeMethodClass
        |
        +--soot.jimple.toolkits.pointer.nativemethods.JavaLangThreadNative

public class JavaLangThreadNative
extends NativeMethodClass


Constructor Summary
JavaLangThreadNative(Singletons.Global g)
           
 
Method Summary
static void java_lang_Thread_currentThread(SootMethod method, ReferenceVariable thisVar, ReferenceVariable returnVar, ReferenceVariable[] params)
          Returns the single variable pointing to all thread objects.
 void simulateMethod(SootMethod method, ReferenceVariable thisVar, ReferenceVariable returnVar, ReferenceVariable[] params)
          Implements the abstract method simulateMethod.
static JavaLangThreadNative v()
           
 
Methods inherited from class soot.jimple.toolkits.pointer.nativemethods.NativeMethodClass
defaultMethod
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JavaLangThreadNative

public JavaLangThreadNative(Singletons.Global g)
Method Detail

v

public static JavaLangThreadNative v()

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.
Overrides:
simulateMethod in class NativeMethodClass

java_lang_Thread_currentThread

public static void java_lang_Thread_currentThread(SootMethod method,
                                                  ReferenceVariable thisVar,
                                                  ReferenceVariable returnVar,
                                                  ReferenceVariable[] params)
Returns the single variable pointing to all thread objects. This makes our analysis conservative on thread objects. public static native java.lang.Thread currentThread();