1 19 20 26 27 package soot.jimple.toolkits.pointer.nativemethods; 28 29 import soot.*; 30 import soot.jimple.toolkits.pointer.representations.*; 31 import soot.jimple.toolkits.pointer.util.*; 32 33 public class JavaLangReflectFieldNative extends NativeMethodClass { 34 public JavaLangReflectFieldNative( NativeHelper helper ) { super(helper); } 35 36 41 public void simulateMethod(SootMethod method, 42 ReferenceVariable thisVar, 43 ReferenceVariable returnVar, 44 ReferenceVariable params[]){ 45 46 String subSignature = method.getSubSignature(); 47 48 if (subSignature.equals("void set(java.lang.Object,java.lang.Object)")){ 49 java_lang_reflect_Field_set(method, thisVar, returnVar, params); 50 return; 51 52 } else if (subSignature.equals("java.lang.Object get(java.lang.Object)")){ 53 java_lang_reflect_Field_get(method, thisVar, returnVar, params); 54 return; 55 56 } else { 57 defaultMethod(method, thisVar, returnVar, params); 58 return; 59 60 } 61 } 62 63 64 71 public 72 void java_lang_reflect_Field_set(SootMethod method, 73 ReferenceVariable thisVar, 74 ReferenceVariable returnVar, 75 ReferenceVariable params[]){ 76 77 throw new NativeMethodNotSupportedException(method); 78 } 79 80 93 public 94 void java_lang_reflect_Field_get(SootMethod method, 95 ReferenceVariable thisVar, 96 ReferenceVariable returnVar, 97 ReferenceVariable params[]){ 98 throw new NativeMethodNotSupportedException(method); 99 } 100 101 170 } 171 | Popular Tags |