1 | /* This file was generated by SableCC (http://www.sablecc.org/). */ |
2 | |
3 | package uk.co.zonetora.fj.ast.node; |
4 | |
5 | import java.util.*; |
6 | import uk.co.zonetora.fj.ast.analysis.*; |
7 | |
8 | public final class ABracketNonLeftRecTerm extends PNonLeftRecTerm |
9 | { |
10 | private TLPar _lPar_; |
11 | private PTerm _term_; |
12 | private TRPar _rPar_; |
13 | |
14 | public ABracketNonLeftRecTerm() |
15 | { |
16 | } |
17 | |
18 | public ABracketNonLeftRecTerm( |
19 | TLPar _lPar_, |
20 | PTerm _term_, |
21 | TRPar _rPar_) |
22 | { |
23 | setLPar(_lPar_); |
24 | |
25 | setTerm(_term_); |
26 | |
27 | setRPar(_rPar_); |
28 | |
29 | } |
30 | public Object clone() |
31 | { |
32 | return new ABracketNonLeftRecTerm( |
33 | (TLPar) cloneNode(_lPar_), |
34 | (PTerm) cloneNode(_term_), |
35 | (TRPar) cloneNode(_rPar_)); |
36 | } |
37 | |
38 | public void apply(Switch sw) |
39 | { |
40 | ((Analysis) sw).caseABracketNonLeftRecTerm(this); |
41 | } |
42 | |
43 | public TLPar getLPar() |
44 | { |
45 | return _lPar_; |
46 | } |
47 | |
48 | public void setLPar(TLPar node) |
49 | { |
50 | if(_lPar_ != null) |
51 | { |
52 | _lPar_.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 | _lPar_ = node; |
66 | } |
67 | |
68 | public PTerm getTerm() |
69 | { |
70 | return _term_; |
71 | } |
72 | |
73 | public void setTerm(PTerm node) |
74 | { |
75 | if(_term_ != null) |
76 | { |
77 | _term_.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 | _term_ = node; |
91 | } |
92 | |
93 | public TRPar getRPar() |
94 | { |
95 | return _rPar_; |
96 | } |
97 | |
98 | public void setRPar(TRPar node) |
99 | { |
100 | if(_rPar_ != null) |
101 | { |
102 | _rPar_.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 | _rPar_ = node; |
116 | } |
117 | |
118 | public String toString() |
119 | { |
120 | return "" |
121 | + toString(_lPar_) |
122 | + toString(_term_) |
123 | + toString(_rPar_); |
124 | } |
125 | |
126 | void removeChild(Node child) |
127 | { |
128 | if(_lPar_ == child) |
129 | { |
130 | _lPar_ = null; |
131 | return; |
132 | } |
133 | |
134 | if(_term_ == child) |
135 | { |
136 | _term_ = null; |
137 | return; |
138 | } |
139 | |
140 | if(_rPar_ == child) |
141 | { |
142 | _rPar_ = null; |
143 | return; |
144 | } |
145 | |
146 | } |
147 | |
148 | void replaceChild(Node oldChild, Node newChild) |
149 | { |
150 | if(_lPar_ == oldChild) |
151 | { |
152 | setLPar((TLPar) newChild); |
153 | return; |
154 | } |
155 | |
156 | if(_term_ == oldChild) |
157 | { |
158 | setTerm((PTerm) newChild); |
159 | return; |
160 | } |
161 | |
162 | if(_rPar_ == oldChild) |
163 | { |
164 | setRPar((TRPar) newChild); |
165 | return; |
166 | } |
167 | |
168 | } |
169 | } |