KickJava   Java API By Example, From Geeks To Geeks.

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


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 AReturnStatement extends PStatement
9 {
10     private TReturn _return_;
11     private PImmediate _immediate_;
12     private TSemicolon _semicolon_;
13
14     public AReturnStatement()
15     {
16     }
17
18     public AReturnStatement(
19         TReturn _return_,
20         PImmediate _immediate_,
21         TSemicolon _semicolon_)
22     {
23         setReturn(_return_);
24
25         setImmediate(_immediate_);
26
27         setSemicolon(_semicolon_);
28
29     }
30     public Object JavaDoc clone()
31     {
32         return new AReturnStatement(
33             (TReturn) cloneNode(_return_),
34             (PImmediate) cloneNode(_immediate_),
35             (TSemicolon) cloneNode(_semicolon_));
36     }
37
38     public void apply(Switch sw)
39     {
40         ((Analysis) sw).caseAReturnStatement(this);
41     }
42
43     public TReturn getReturn()
44     {
45         return _return_;
46     }
47
48     public void setReturn(TReturn node)
49     {
50         if(_return_ != null)
51         {
52             _return_.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         _return_ = node;
66     }
67
68     public PImmediate getImmediate()
69     {
70         return _immediate_;
71     }
72
73     public void setImmediate(PImmediate node)
74     {
75         if(_immediate_ != null)
76         {
77             _immediate_.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         _immediate_ = 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(_return_)
122             + toString(_immediate_)
123             + toString(_semicolon_);
124     }
125
126     void removeChild(Node child)
127     {
128         if(_return_ == child)
129         {
130             _return_ = null;
131             return;
132         }
133
134         if(_immediate_ == child)
135         {
136             _immediate_ = 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(_return_ == oldChild)
151         {
152             setReturn((TReturn) newChild);
153             return;
154         }
155
156         if(_immediate_ == oldChild)
157         {
158             setImmediate((PImmediate) newChild);
159             return;
160         }
161
162         if(_semicolon_ == oldChild)
163         {
164             setSemicolon((TSemicolon) newChild);
165             return;
166         }
167
168     }
169 }
170
Popular Tags