private SootMethodRef remapRef(SootMethodRef ref) { Type return_type = fixType(ref.returnType()); List params = fixParameterList(ref.parameterTypes()); int modifiers = Modifier.PUBLIC; if (ref.isStatic()) { modifiers += Modifier.STATIC; } SootMethod method = new SootMethod(ref.name(), params, return_type, modifiers); SootClass decl_class = ref.declaringClass(); if (shouldMap(decl_class)) { decl_class = getMapping(decl_class); } method.setDeclaringClass(decl_class); return method.makeRef(); }
public BSpecialInvokeInst(SootMethodRef methodRef) { if (methodRef.isStatic()) throw new RuntimeException("wrong static-ness"); this.methodRef = methodRef; }