1 19 20 25 26 27 28 29 30 package soot.baf.internal; 31 32 import soot.*; 33 import soot.baf.*; 34 import soot.util.*; 35 import java.util.*; 36 37 public class BDup2_x2Inst extends BDupInst implements Dup2_x2Inst 38 { 39 private Type mOp1Type; 40 private Type mOp2Type; 41 private Type mUnder1Type; 42 private Type mUnder2Type; 43 44 public BDup2_x2Inst(Type aOp1Type, Type aOp2Type, 45 Type aUnder1Type, Type aUnder2Type) 46 { 47 mOp1Type = Baf.getDescriptorTypeOf(aOp1Type); 48 mOp2Type = Baf.getDescriptorTypeOf(aOp2Type); 49 mUnder1Type = Baf.getDescriptorTypeOf(aUnder1Type); 50 mUnder2Type = Baf.getDescriptorTypeOf(aUnder2Type); 51 } 52 53 public Type getOp1Type() 54 { 55 return mOp1Type; 56 } 57 58 public Type getOp2Type() 59 { 60 return mOp2Type; 61 } 62 63 public Type getUnder1Type() 64 { 65 return mUnder1Type; 66 } 67 68 public Type getUnder2Type() 69 { 70 return mUnder2Type; 71 } 72 73 public List getOpTypes() 74 { 75 List res = new ArrayList(); 76 res.add(mOp1Type); 77 res.add(mOp2Type); 78 return res; 79 } 80 81 public List getUnderTypes() 82 { 83 List res = new ArrayList(); 84 res.add(mUnder1Type); 85 res.add(mUnder2Type); 86 return res; 87 } 88 89 90 final public String getName() { return "dup2_x2"; } 91 92 93 public void apply(Switch sw) 94 { 95 ((InstSwitch) sw).caseDup2_x2Inst(this); 96 } 97 98 public String toString() 99 { 100 return "dup2_x2." + Baf.bafDescriptorOf(mOp1Type) + "." + Baf.bafDescriptorOf(mOp2Type) + "_" + Baf.bafDescriptorOf(mUnder1Type) + "." + Baf.bafDescriptorOf(mUnder2Type); 101 } 102 103 } 104 105 106 107 | Popular Tags |