1 2 3 package soot.jimple.parser.node; 4 5 import java.util.*; 6 import soot.jimple.parser.analysis.*; 7 8 public final class AConstantImmediate extends PImmediate 9 { 10 private PConstant _constant_; 11 12 public AConstantImmediate() 13 { 14 } 15 16 public AConstantImmediate( 17 PConstant _constant_) 18 { 19 setConstant(_constant_); 20 21 } 22 public Object clone() 23 { 24 return new AConstantImmediate( 25 (PConstant) cloneNode(_constant_)); 26 } 27 28 public void apply(Switch sw) 29 { 30 ((Analysis) sw).caseAConstantImmediate(this); 31 } 32 33 public PConstant getConstant() 34 { 35 return _constant_; 36 } 37 38 public void setConstant(PConstant node) 39 { 40 if(_constant_ != null) 41 { 42 _constant_.parent(null); 43 } 44 45 if(node != null) 46 { 47 if(node.parent() != null) 48 { 49 node.parent().removeChild(node); 50 } 51 52 node.parent(this); 53 } 54 55 _constant_ = node; 56 } 57 58 public String toString() 59 { 60 return "" 61 + toString(_constant_); 62 } 63 64 void removeChild(Node child) 65 { 66 if(_constant_ == child) 67 { 68 _constant_ = null; 69 return; 70 } 71 72 } 73 74 void replaceChild(Node oldChild, Node newChild) 75 { 76 if(_constant_ == oldChild) 77 { 78 setConstant((PConstant) newChild); 79 return; 80 } 81 82 } 83 } 84 | Popular Tags |