1 20 21 26 27 28 29 30 31 32 package soot.jimple.internal; 33 34 import soot.*; 35 import soot.jimple.*; 36 import soot.util.*; 37 import java.util.*; 38 39 public class JInterfaceInvokeExpr extends AbstractInterfaceInvokeExpr 40 { 41 public JInterfaceInvokeExpr(Value base, SootMethodRef methodRef, List args) 42 { 43 super(Jimple.v().newLocalBox(base), methodRef, 44 new ValueBox[args.size()]); 45 46 for(int i = 0; i < args.size(); i++) 47 this.argBoxes[i] = Jimple.v().newImmediateBox((Value) args.get(i)); 48 } 49 50 public Object clone() 51 { 52 List argList = new ArrayList(getArgCount()); 53 54 for(int i = 0; i < getArgCount(); i++) { 55 argList.add(i, Jimple.cloneIfNecessary(getArg(i))); 56 } 57 58 return new JInterfaceInvokeExpr(Jimple.cloneIfNecessary(getBase()), methodRef, argList); 59 } 60 61 } 62 63 64 | Popular Tags |