Mercurial > octave-nkf
comparison src/pt-stmt.cc @ 5861:2a6cb4ed8f1e
[project @ 2006-06-16 05:09:41 by jwe]
author | jwe |
---|---|
date | Fri, 16 Jun 2006 05:09:42 +0000 |
parents | 6bd94066d360 |
children | f1676652d808 |
comparison
equal
deleted
inserted
replaced
5860:b645066d40ad | 5861:2a6cb4ed8f1e |
---|---|
141 } | 141 } |
142 | 142 |
143 return retval; | 143 return retval; |
144 } | 144 } |
145 | 145 |
146 tree_statement * | |
147 tree_statement::dup (symbol_table *sym_tab) | |
148 { | |
149 tree_statement *new_stmt = new tree_statement (); | |
150 | |
151 new_stmt->cmd = cmd ? cmd->dup (sym_tab) : 0; | |
152 | |
153 new_stmt->expr = expr ? expr->dup (sym_tab) : 0; | |
154 | |
155 new_stmt->comm = comm ? comm->dup () : 0; | |
156 | |
157 new_stmt->print_flag = print_flag; | |
158 | |
159 return new_stmt; | |
160 } | |
161 | |
146 void | 162 void |
147 tree_statement::accept (tree_walker& tw) | 163 tree_statement::accept (tree_walker& tw) |
148 { | 164 { |
149 tw.visit_statement (*this); | 165 tw.visit_statement (*this); |
150 } | 166 } |
249 accept (tbp); | 265 accept (tbp); |
250 | 266 |
251 return tbp.get_list (); | 267 return tbp.get_list (); |
252 } | 268 } |
253 | 269 |
270 tree_statement_list * | |
271 tree_statement_list::dup (symbol_table *sym_tab) | |
272 { | |
273 tree_statement_list *new_list = new tree_statement_list (); | |
274 | |
275 new_list->function_body = function_body; | |
276 | |
277 for (iterator p = begin (); p != end (); p++) | |
278 { | |
279 tree_statement *elt = *p; | |
280 | |
281 new_list->append (elt ? elt->dup (sym_tab) : 0); | |
282 } | |
283 | |
284 return new_list; | |
285 } | |
286 | |
254 void | 287 void |
255 tree_statement_list::accept (tree_walker& tw) | 288 tree_statement_list::accept (tree_walker& tw) |
256 { | 289 { |
257 tw.visit_statement_list (*this); | 290 tw.visit_statement_list (*this); |
258 } | 291 } |