KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > soot > jimple > parser > node > AGotoStmt


1 /* This file was generated by SableCC (http://www.sablecc.org/). */
2
3 package soot.jimple.parser.node;
4
5 import java.util.*;
6 import soot.jimple.parser.analysis.*;
7
8 public final class AGotoStmt extends PGotoStmt
9 {
10     private TGoto _goto_;
11     private PLabelName _labelName_;
12     private TSemicolon _semicolon_;
13
14     public AGotoStmt()
15     {
16     }
17
18     public AGotoStmt(
19         TGoto _goto_,
20         PLabelName _labelName_,
21         TSemicolon _semicolon_)
22     {
23         setGoto(_goto_);
24
25         setLabelName(_labelName_);
26
27         setSemicolon(_semicolon_);
28
29     }
30     public Object JavaDoc clone()
31     {
32         return new AGotoStmt(
33             (TGoto) cloneNode(_goto_),
34             (PLabelName) cloneNode(_labelName_),
35             (TSemicolon) cloneNode(_semicolon_));
36     }
37
38     public void apply(Switch sw)
39     {
40         ((Analysis) sw).caseAGotoStmt(this);
41     }
42
43     public TGoto getGoto()
44     {
45         return _goto_;
46     }
47
48     public void setGoto(TGoto node)
49     {
50         if(_goto_ != null)
51         {
52             _goto_.parent(null);
53         }
54
55         if(node != null)
56         {
57             if(node.parent() != null)
58             {
59                 node.parent().removeChild(node);
60             }
61
62             node.parent(this);
63         }
64
65         _goto_ = node;
66     }
67
68     public PLabelName getLabelName()
69     {
70         return _labelName_;
71     }
72
73     public void setLabelName(PLabelName node)
74     {
75         if(_labelName_ != null)
76         {
77             _labelName_.parent(null);
78         }
79
80         if(node != null)
81         {
82             if(node.parent() != null)
83             {
84                 node.parent().removeChild(node);
85             }
86
87             node.parent(this);
88         }
89
90         _labelName_ = node;
91     }
92
93     public TSemicolon getSemicolon()
94     {
95         return _semicolon_;
96     }
97
98     public void setSemicolon(TSemicolon node)
99     {
100         if(_semicolon_ != null)
101         {
102             _semicolon_.parent(null);
103         }
104
105         if(node != null)
106         {
107             if(node.parent() != null)
108             {
109                 node.parent().removeChild(node);
110             }
111
112             node.parent(this);
113         }
114
115         _semicolon_ = node;
116     }
117
118     public String JavaDoc toString()
119     {
120         return ""
121             + toString(_goto_)
122             + toString(_labelName_)
123             + toString(_semicolon_);
124     }
125
126     void removeChild(Node child)
127     {
128         if(_goto_ == child)
129         {
130             _goto_ = null;
131             return;
132         }
133
134         if(_labelName_ == child)
135         {
136             _labelName_ = null;
137             return;
138         }
139
140         if(_semicolon_ == child)
141         {
142             _semicolon_ = null;
143             return;
144         }
145
146     }
147
148     void replaceChild(Node oldChild, Node newChild)
149     {
150         if(_goto_ == oldChild)
151         {
152             setGoto((TGoto) newChild);
153             return;
154         }
155
156         if(_labelName_ == oldChild)
157         {
158             setLabelName((PLabelName) newChild);
159             return;
160         }
161
162         if(_semicolon_ == oldChild)
163         {
164             setSemicolon((TSemicolon) newChild);
165             return;
166         }
167
168     }
169 }
170
Popular Tags