1 /* valacodevisitor.c generated by valac, the Vala compiler
2  * generated from valacodevisitor.vala, do not modify */
3 
4 /* valacodevisitor.vala
5  *
6  * Copyright (C) 2006-2010  Jürg Billeter
7  * Copyright (C) 2006-2008  Raffaele Sandrini
8  *
9  * This library is free software; you can redistribute it and/or
10  * modify it under the terms of the GNU Lesser General Public
11  * License as published by the Free Software Foundation; either
12  * version 2.1 of the License, or (at your option) any later version.
13 
14  * This library is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17  * Lesser General Public License for more details.
18 
19  * You should have received a copy of the GNU Lesser General Public
20  * License along with this library; if not, write to the Free Software
21  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
22  *
23  * Author:
24  * 	Jürg Billeter <j@bitron.ch>
25  *	Raffaele Sandrini <raffaele@sandrini.ch>
26  */
27 
28 #include "vala.h"
29 #include <glib.h>
30 #include <gobject/gvaluecollector.h>
31 
32 typedef struct _ValaParamSpecCodeVisitor ValaParamSpecCodeVisitor;
33 
34 struct _ValaParamSpecCodeVisitor {
35 	GParamSpec parent_instance;
36 };
37 
38 static gpointer vala_code_visitor_parent_class = NULL;
39 
40 static void vala_code_visitor_real_visit_source_file (ValaCodeVisitor* self,
41                                                ValaSourceFile* source_file);
42 static void vala_code_visitor_real_visit_namespace (ValaCodeVisitor* self,
43                                              ValaNamespace* ns);
44 static void vala_code_visitor_real_visit_class (ValaCodeVisitor* self,
45                                          ValaClass* cl);
46 static void vala_code_visitor_real_visit_struct (ValaCodeVisitor* self,
47                                           ValaStruct* st);
48 static void vala_code_visitor_real_visit_interface (ValaCodeVisitor* self,
49                                              ValaInterface* iface);
50 static void vala_code_visitor_real_visit_enum (ValaCodeVisitor* self,
51                                         ValaEnum* en);
52 static void vala_code_visitor_real_visit_enum_value (ValaCodeVisitor* self,
53                                               ValaEnumValue* ev);
54 static void vala_code_visitor_real_visit_error_domain (ValaCodeVisitor* self,
55                                                 ValaErrorDomain* edomain);
56 static void vala_code_visitor_real_visit_error_code (ValaCodeVisitor* self,
57                                               ValaErrorCode* ecode);
58 static void vala_code_visitor_real_visit_delegate (ValaCodeVisitor* self,
59                                             ValaDelegate* d);
60 static void vala_code_visitor_real_visit_constant (ValaCodeVisitor* self,
61                                             ValaConstant* c);
62 static void vala_code_visitor_real_visit_field (ValaCodeVisitor* self,
63                                          ValaField* f);
64 static void vala_code_visitor_real_visit_method (ValaCodeVisitor* self,
65                                           ValaMethod* m);
66 static void vala_code_visitor_real_visit_creation_method (ValaCodeVisitor* self,
67                                                    ValaCreationMethod* m);
68 static void vala_code_visitor_real_visit_formal_parameter (ValaCodeVisitor* self,
69                                                     ValaParameter* p);
70 static void vala_code_visitor_real_visit_property (ValaCodeVisitor* self,
71                                             ValaProperty* prop);
72 static void vala_code_visitor_real_visit_property_accessor (ValaCodeVisitor* self,
73                                                      ValaPropertyAccessor* acc);
74 static void vala_code_visitor_real_visit_signal (ValaCodeVisitor* self,
75                                           ValaSignal* sig);
76 static void vala_code_visitor_real_visit_constructor (ValaCodeVisitor* self,
77                                                ValaConstructor* c);
78 static void vala_code_visitor_real_visit_destructor (ValaCodeVisitor* self,
79                                               ValaDestructor* d);
80 static void vala_code_visitor_real_visit_type_parameter (ValaCodeVisitor* self,
81                                                   ValaTypeParameter* p);
82 static void vala_code_visitor_real_visit_using_directive (ValaCodeVisitor* self,
83                                                    ValaUsingDirective* ns);
84 static void vala_code_visitor_real_visit_data_type (ValaCodeVisitor* self,
85                                              ValaDataType* type);
86 static void vala_code_visitor_real_visit_block (ValaCodeVisitor* self,
87                                          ValaBlock* b);
88 static void vala_code_visitor_real_visit_empty_statement (ValaCodeVisitor* self,
89                                                    ValaEmptyStatement* stmt);
90 static void vala_code_visitor_real_visit_declaration_statement (ValaCodeVisitor* self,
91                                                          ValaDeclarationStatement* stmt);
92 static void vala_code_visitor_real_visit_local_variable (ValaCodeVisitor* self,
93                                                   ValaLocalVariable* local);
94 static void vala_code_visitor_real_visit_initializer_list (ValaCodeVisitor* self,
95                                                     ValaInitializerList* list);
96 static void vala_code_visitor_real_visit_expression_statement (ValaCodeVisitor* self,
97                                                         ValaExpressionStatement* stmt);
98 static void vala_code_visitor_real_visit_if_statement (ValaCodeVisitor* self,
99                                                 ValaIfStatement* stmt);
100 static void vala_code_visitor_real_visit_switch_statement (ValaCodeVisitor* self,
101                                                     ValaSwitchStatement* stmt);
102 static void vala_code_visitor_real_visit_switch_section (ValaCodeVisitor* self,
103                                                   ValaSwitchSection* section);
104 static void vala_code_visitor_real_visit_switch_label (ValaCodeVisitor* self,
105                                                 ValaSwitchLabel* label);
106 static void vala_code_visitor_real_visit_loop (ValaCodeVisitor* self,
107                                         ValaLoop* stmt);
108 static void vala_code_visitor_real_visit_while_statement (ValaCodeVisitor* self,
109                                                    ValaWhileStatement* stmt);
110 static void vala_code_visitor_real_visit_do_statement (ValaCodeVisitor* self,
111                                                 ValaDoStatement* stmt);
112 static void vala_code_visitor_real_visit_for_statement (ValaCodeVisitor* self,
113                                                  ValaForStatement* stmt);
114 static void vala_code_visitor_real_visit_foreach_statement (ValaCodeVisitor* self,
115                                                      ValaForeachStatement* stmt);
116 static void vala_code_visitor_real_visit_break_statement (ValaCodeVisitor* self,
117                                                    ValaBreakStatement* stmt);
118 static void vala_code_visitor_real_visit_continue_statement (ValaCodeVisitor* self,
119                                                       ValaContinueStatement* stmt);
120 static void vala_code_visitor_real_visit_return_statement (ValaCodeVisitor* self,
121                                                     ValaReturnStatement* stmt);
122 static void vala_code_visitor_real_visit_yield_statement (ValaCodeVisitor* self,
123                                                    ValaYieldStatement* y);
124 static void vala_code_visitor_real_visit_throw_statement (ValaCodeVisitor* self,
125                                                    ValaThrowStatement* stmt);
126 static void vala_code_visitor_real_visit_try_statement (ValaCodeVisitor* self,
127                                                  ValaTryStatement* stmt);
128 static void vala_code_visitor_real_visit_catch_clause (ValaCodeVisitor* self,
129                                                 ValaCatchClause* clause);
130 static void vala_code_visitor_real_visit_lock_statement (ValaCodeVisitor* self,
131                                                   ValaLockStatement* stmt);
132 static void vala_code_visitor_real_visit_unlock_statement (ValaCodeVisitor* self,
133                                                     ValaUnlockStatement* stmt);
134 static void vala_code_visitor_real_visit_delete_statement (ValaCodeVisitor* self,
135                                                     ValaDeleteStatement* stmt);
136 static void vala_code_visitor_real_visit_expression (ValaCodeVisitor* self,
137                                               ValaExpression* expr);
138 static void vala_code_visitor_real_visit_array_creation_expression (ValaCodeVisitor* self,
139                                                              ValaArrayCreationExpression* expr);
140 static void vala_code_visitor_real_visit_boolean_literal (ValaCodeVisitor* self,
141                                                    ValaBooleanLiteral* lit);
142 static void vala_code_visitor_real_visit_character_literal (ValaCodeVisitor* self,
143                                                      ValaCharacterLiteral* lit);
144 static void vala_code_visitor_real_visit_integer_literal (ValaCodeVisitor* self,
145                                                    ValaIntegerLiteral* lit);
146 static void vala_code_visitor_real_visit_real_literal (ValaCodeVisitor* self,
147                                                 ValaRealLiteral* lit);
148 static void vala_code_visitor_real_visit_regex_literal (ValaCodeVisitor* self,
149                                                  ValaRegexLiteral* lit);
150 static void vala_code_visitor_real_visit_string_literal (ValaCodeVisitor* self,
151                                                   ValaStringLiteral* lit);
152 static void vala_code_visitor_real_visit_template (ValaCodeVisitor* self,
153                                             ValaTemplate* tmpl);
154 static void vala_code_visitor_real_visit_tuple (ValaCodeVisitor* self,
155                                          ValaTuple* tuple);
156 static void vala_code_visitor_real_visit_null_literal (ValaCodeVisitor* self,
157                                                 ValaNullLiteral* lit);
158 static void vala_code_visitor_real_visit_member_access (ValaCodeVisitor* self,
159                                                  ValaMemberAccess* expr);
160 static void vala_code_visitor_real_visit_method_call (ValaCodeVisitor* self,
161                                                ValaMethodCall* expr);
162 static void vala_code_visitor_real_visit_element_access (ValaCodeVisitor* self,
163                                                   ValaElementAccess* expr);
164 static void vala_code_visitor_real_visit_slice_expression (ValaCodeVisitor* self,
165                                                     ValaSliceExpression* expr);
166 static void vala_code_visitor_real_visit_base_access (ValaCodeVisitor* self,
167                                                ValaBaseAccess* expr);
168 static void vala_code_visitor_real_visit_postfix_expression (ValaCodeVisitor* self,
169                                                       ValaPostfixExpression* expr);
170 static void vala_code_visitor_real_visit_object_creation_expression (ValaCodeVisitor* self,
171                                                               ValaObjectCreationExpression* expr);
172 static void vala_code_visitor_real_visit_sizeof_expression (ValaCodeVisitor* self,
173                                                      ValaSizeofExpression* expr);
174 static void vala_code_visitor_real_visit_typeof_expression (ValaCodeVisitor* self,
175                                                      ValaTypeofExpression* expr);
176 static void vala_code_visitor_real_visit_unary_expression (ValaCodeVisitor* self,
177                                                     ValaUnaryExpression* expr);
178 static void vala_code_visitor_real_visit_cast_expression (ValaCodeVisitor* self,
179                                                    ValaCastExpression* expr);
180 static void vala_code_visitor_real_visit_named_argument (ValaCodeVisitor* self,
181                                                   ValaNamedArgument* expr);
182 static void vala_code_visitor_real_visit_pointer_indirection (ValaCodeVisitor* self,
183                                                        ValaPointerIndirection* expr);
184 static void vala_code_visitor_real_visit_addressof_expression (ValaCodeVisitor* self,
185                                                         ValaAddressofExpression* expr);
186 static void vala_code_visitor_real_visit_reference_transfer_expression (ValaCodeVisitor* self,
187                                                                  ValaReferenceTransferExpression* expr);
188 static void vala_code_visitor_real_visit_binary_expression (ValaCodeVisitor* self,
189                                                      ValaBinaryExpression* expr);
190 static void vala_code_visitor_real_visit_type_check (ValaCodeVisitor* self,
191                                               ValaTypeCheck* expr);
192 static void vala_code_visitor_real_visit_conditional_expression (ValaCodeVisitor* self,
193                                                           ValaConditionalExpression* expr);
194 static void vala_code_visitor_real_visit_lambda_expression (ValaCodeVisitor* self,
195                                                      ValaLambdaExpression* expr);
196 static void vala_code_visitor_real_visit_assignment (ValaCodeVisitor* self,
197                                               ValaAssignment* a);
198 static void vala_code_visitor_real_visit_end_full_expression (ValaCodeVisitor* self,
199                                                        ValaExpression* expr);
200 static void vala_code_visitor_finalize (ValaCodeVisitor * obj);
201 static GType vala_code_visitor_get_type_once (void);
202 
203 /**
204  * Visit operation called for source files.
205  *
206  * @param source_file a source file
207  */
208 static void
vala_code_visitor_real_visit_source_file(ValaCodeVisitor * self,ValaSourceFile * source_file)209 vala_code_visitor_real_visit_source_file (ValaCodeVisitor* self,
210                                           ValaSourceFile* source_file)
211 {
212 	g_return_if_fail (source_file != NULL);
213 }
214 
215 void
vala_code_visitor_visit_source_file(ValaCodeVisitor * self,ValaSourceFile * source_file)216 vala_code_visitor_visit_source_file (ValaCodeVisitor* self,
217                                      ValaSourceFile* source_file)
218 {
219 	g_return_if_fail (self != NULL);
220 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_source_file (self, source_file);
221 }
222 
223 /**
224  * Visit operation called for namespaces.
225  *
226  * @param ns a namespace
227  */
228 static void
vala_code_visitor_real_visit_namespace(ValaCodeVisitor * self,ValaNamespace * ns)229 vala_code_visitor_real_visit_namespace (ValaCodeVisitor* self,
230                                         ValaNamespace* ns)
231 {
232 	g_return_if_fail (ns != NULL);
233 }
234 
235 void
vala_code_visitor_visit_namespace(ValaCodeVisitor * self,ValaNamespace * ns)236 vala_code_visitor_visit_namespace (ValaCodeVisitor* self,
237                                    ValaNamespace* ns)
238 {
239 	g_return_if_fail (self != NULL);
240 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_namespace (self, ns);
241 }
242 
243 /**
244  * Visit operation called for classes.
245  *
246  * @param cl a class
247  */
248 static void
vala_code_visitor_real_visit_class(ValaCodeVisitor * self,ValaClass * cl)249 vala_code_visitor_real_visit_class (ValaCodeVisitor* self,
250                                     ValaClass* cl)
251 {
252 	g_return_if_fail (cl != NULL);
253 }
254 
255 void
vala_code_visitor_visit_class(ValaCodeVisitor * self,ValaClass * cl)256 vala_code_visitor_visit_class (ValaCodeVisitor* self,
257                                ValaClass* cl)
258 {
259 	g_return_if_fail (self != NULL);
260 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_class (self, cl);
261 }
262 
263 /**
264  * Visit operation called for structs.
265  *
266  * @param st a struct
267  */
268 static void
vala_code_visitor_real_visit_struct(ValaCodeVisitor * self,ValaStruct * st)269 vala_code_visitor_real_visit_struct (ValaCodeVisitor* self,
270                                      ValaStruct* st)
271 {
272 	g_return_if_fail (st != NULL);
273 }
274 
275 void
vala_code_visitor_visit_struct(ValaCodeVisitor * self,ValaStruct * st)276 vala_code_visitor_visit_struct (ValaCodeVisitor* self,
277                                 ValaStruct* st)
278 {
279 	g_return_if_fail (self != NULL);
280 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_struct (self, st);
281 }
282 
283 /**
284  * Visit operation called for interfaces.
285  *
286  * @param iface an interface
287  */
288 static void
vala_code_visitor_real_visit_interface(ValaCodeVisitor * self,ValaInterface * iface)289 vala_code_visitor_real_visit_interface (ValaCodeVisitor* self,
290                                         ValaInterface* iface)
291 {
292 	g_return_if_fail (iface != NULL);
293 }
294 
295 void
vala_code_visitor_visit_interface(ValaCodeVisitor * self,ValaInterface * iface)296 vala_code_visitor_visit_interface (ValaCodeVisitor* self,
297                                    ValaInterface* iface)
298 {
299 	g_return_if_fail (self != NULL);
300 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_interface (self, iface);
301 }
302 
303 /**
304  * Visit operation called for enums.
305  *
306  * @param en an enum
307  */
308 static void
vala_code_visitor_real_visit_enum(ValaCodeVisitor * self,ValaEnum * en)309 vala_code_visitor_real_visit_enum (ValaCodeVisitor* self,
310                                    ValaEnum* en)
311 {
312 	g_return_if_fail (en != NULL);
313 }
314 
315 void
vala_code_visitor_visit_enum(ValaCodeVisitor * self,ValaEnum * en)316 vala_code_visitor_visit_enum (ValaCodeVisitor* self,
317                               ValaEnum* en)
318 {
319 	g_return_if_fail (self != NULL);
320 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_enum (self, en);
321 }
322 
323 /**
324  * Visit operation called for enum values.
325  *
326  * @param ev an enum value
327  */
328 static void
vala_code_visitor_real_visit_enum_value(ValaCodeVisitor * self,ValaEnumValue * ev)329 vala_code_visitor_real_visit_enum_value (ValaCodeVisitor* self,
330                                          ValaEnumValue* ev)
331 {
332 	g_return_if_fail (ev != NULL);
333 }
334 
335 void
vala_code_visitor_visit_enum_value(ValaCodeVisitor * self,ValaEnumValue * ev)336 vala_code_visitor_visit_enum_value (ValaCodeVisitor* self,
337                                     ValaEnumValue* ev)
338 {
339 	g_return_if_fail (self != NULL);
340 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_enum_value (self, ev);
341 }
342 
343 /**
344  * Visit operation called for error domains.
345  *
346  * @param edomain an error domain
347  */
348 static void
vala_code_visitor_real_visit_error_domain(ValaCodeVisitor * self,ValaErrorDomain * edomain)349 vala_code_visitor_real_visit_error_domain (ValaCodeVisitor* self,
350                                            ValaErrorDomain* edomain)
351 {
352 	g_return_if_fail (edomain != NULL);
353 }
354 
355 void
vala_code_visitor_visit_error_domain(ValaCodeVisitor * self,ValaErrorDomain * edomain)356 vala_code_visitor_visit_error_domain (ValaCodeVisitor* self,
357                                       ValaErrorDomain* edomain)
358 {
359 	g_return_if_fail (self != NULL);
360 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_error_domain (self, edomain);
361 }
362 
363 /**
364  * Visit operation called for error codes.
365  *
366  * @param ecode an error code
367  */
368 static void
vala_code_visitor_real_visit_error_code(ValaCodeVisitor * self,ValaErrorCode * ecode)369 vala_code_visitor_real_visit_error_code (ValaCodeVisitor* self,
370                                          ValaErrorCode* ecode)
371 {
372 	g_return_if_fail (ecode != NULL);
373 }
374 
375 void
vala_code_visitor_visit_error_code(ValaCodeVisitor * self,ValaErrorCode * ecode)376 vala_code_visitor_visit_error_code (ValaCodeVisitor* self,
377                                     ValaErrorCode* ecode)
378 {
379 	g_return_if_fail (self != NULL);
380 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_error_code (self, ecode);
381 }
382 
383 /**
384  * Visit operation called for delegates.
385  *
386  * @param d a delegate
387  */
388 static void
vala_code_visitor_real_visit_delegate(ValaCodeVisitor * self,ValaDelegate * d)389 vala_code_visitor_real_visit_delegate (ValaCodeVisitor* self,
390                                        ValaDelegate* d)
391 {
392 	g_return_if_fail (d != NULL);
393 }
394 
395 void
vala_code_visitor_visit_delegate(ValaCodeVisitor * self,ValaDelegate * d)396 vala_code_visitor_visit_delegate (ValaCodeVisitor* self,
397                                   ValaDelegate* d)
398 {
399 	g_return_if_fail (self != NULL);
400 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_delegate (self, d);
401 }
402 
403 /**
404  * Visit operation called for constants.
405  *
406  * @param c a constant
407  */
408 static void
vala_code_visitor_real_visit_constant(ValaCodeVisitor * self,ValaConstant * c)409 vala_code_visitor_real_visit_constant (ValaCodeVisitor* self,
410                                        ValaConstant* c)
411 {
412 	g_return_if_fail (c != NULL);
413 }
414 
415 void
vala_code_visitor_visit_constant(ValaCodeVisitor * self,ValaConstant * c)416 vala_code_visitor_visit_constant (ValaCodeVisitor* self,
417                                   ValaConstant* c)
418 {
419 	g_return_if_fail (self != NULL);
420 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_constant (self, c);
421 }
422 
423 /**
424  * Visit operation called for fields.
425  *
426  * @param f a field
427  */
428 static void
vala_code_visitor_real_visit_field(ValaCodeVisitor * self,ValaField * f)429 vala_code_visitor_real_visit_field (ValaCodeVisitor* self,
430                                     ValaField* f)
431 {
432 	g_return_if_fail (f != NULL);
433 }
434 
435 void
vala_code_visitor_visit_field(ValaCodeVisitor * self,ValaField * f)436 vala_code_visitor_visit_field (ValaCodeVisitor* self,
437                                ValaField* f)
438 {
439 	g_return_if_fail (self != NULL);
440 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_field (self, f);
441 }
442 
443 /**
444  * Visit operation called for methods.
445  *
446  * @param m a method
447  */
448 static void
vala_code_visitor_real_visit_method(ValaCodeVisitor * self,ValaMethod * m)449 vala_code_visitor_real_visit_method (ValaCodeVisitor* self,
450                                      ValaMethod* m)
451 {
452 	g_return_if_fail (m != NULL);
453 }
454 
455 void
vala_code_visitor_visit_method(ValaCodeVisitor * self,ValaMethod * m)456 vala_code_visitor_visit_method (ValaCodeVisitor* self,
457                                 ValaMethod* m)
458 {
459 	g_return_if_fail (self != NULL);
460 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_method (self, m);
461 }
462 
463 /**
464  * Visit operation called for creation methods.
465  *
466  * @param m a method
467  */
468 static void
vala_code_visitor_real_visit_creation_method(ValaCodeVisitor * self,ValaCreationMethod * m)469 vala_code_visitor_real_visit_creation_method (ValaCodeVisitor* self,
470                                               ValaCreationMethod* m)
471 {
472 	g_return_if_fail (m != NULL);
473 }
474 
475 void
vala_code_visitor_visit_creation_method(ValaCodeVisitor * self,ValaCreationMethod * m)476 vala_code_visitor_visit_creation_method (ValaCodeVisitor* self,
477                                          ValaCreationMethod* m)
478 {
479 	g_return_if_fail (self != NULL);
480 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_creation_method (self, m);
481 }
482 
483 /**
484  * Visit operation called for formal parameters.
485  *
486  * @param p a formal parameter
487  */
488 static void
vala_code_visitor_real_visit_formal_parameter(ValaCodeVisitor * self,ValaParameter * p)489 vala_code_visitor_real_visit_formal_parameter (ValaCodeVisitor* self,
490                                                ValaParameter* p)
491 {
492 	g_return_if_fail (p != NULL);
493 }
494 
495 void
vala_code_visitor_visit_formal_parameter(ValaCodeVisitor * self,ValaParameter * p)496 vala_code_visitor_visit_formal_parameter (ValaCodeVisitor* self,
497                                           ValaParameter* p)
498 {
499 	g_return_if_fail (self != NULL);
500 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_formal_parameter (self, p);
501 }
502 
503 /**
504  * Visit operation called for properties.
505  *
506  * @param prop a property
507  */
508 static void
vala_code_visitor_real_visit_property(ValaCodeVisitor * self,ValaProperty * prop)509 vala_code_visitor_real_visit_property (ValaCodeVisitor* self,
510                                        ValaProperty* prop)
511 {
512 	g_return_if_fail (prop != NULL);
513 }
514 
515 void
vala_code_visitor_visit_property(ValaCodeVisitor * self,ValaProperty * prop)516 vala_code_visitor_visit_property (ValaCodeVisitor* self,
517                                   ValaProperty* prop)
518 {
519 	g_return_if_fail (self != NULL);
520 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_property (self, prop);
521 }
522 
523 /**
524  * Visit operation called for property accessors.
525  *
526  * @param acc a property accessor
527  */
528 static void
vala_code_visitor_real_visit_property_accessor(ValaCodeVisitor * self,ValaPropertyAccessor * acc)529 vala_code_visitor_real_visit_property_accessor (ValaCodeVisitor* self,
530                                                 ValaPropertyAccessor* acc)
531 {
532 	g_return_if_fail (acc != NULL);
533 }
534 
535 void
vala_code_visitor_visit_property_accessor(ValaCodeVisitor * self,ValaPropertyAccessor * acc)536 vala_code_visitor_visit_property_accessor (ValaCodeVisitor* self,
537                                            ValaPropertyAccessor* acc)
538 {
539 	g_return_if_fail (self != NULL);
540 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_property_accessor (self, acc);
541 }
542 
543 /**
544  * Visit operation called for signals.
545  *
546  * @param sig a signal
547  */
548 static void
vala_code_visitor_real_visit_signal(ValaCodeVisitor * self,ValaSignal * sig)549 vala_code_visitor_real_visit_signal (ValaCodeVisitor* self,
550                                      ValaSignal* sig)
551 {
552 	g_return_if_fail (sig != NULL);
553 }
554 
555 void
vala_code_visitor_visit_signal(ValaCodeVisitor * self,ValaSignal * sig)556 vala_code_visitor_visit_signal (ValaCodeVisitor* self,
557                                 ValaSignal* sig)
558 {
559 	g_return_if_fail (self != NULL);
560 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_signal (self, sig);
561 }
562 
563 /**
564  * Visit operation called for constructors.
565  *
566  * @param c a constructor
567  */
568 static void
vala_code_visitor_real_visit_constructor(ValaCodeVisitor * self,ValaConstructor * c)569 vala_code_visitor_real_visit_constructor (ValaCodeVisitor* self,
570                                           ValaConstructor* c)
571 {
572 	g_return_if_fail (c != NULL);
573 }
574 
575 void
vala_code_visitor_visit_constructor(ValaCodeVisitor * self,ValaConstructor * c)576 vala_code_visitor_visit_constructor (ValaCodeVisitor* self,
577                                      ValaConstructor* c)
578 {
579 	g_return_if_fail (self != NULL);
580 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_constructor (self, c);
581 }
582 
583 /**
584  * Visit operation called for destructors.
585  *
586  * @param d a destructor
587  */
588 static void
vala_code_visitor_real_visit_destructor(ValaCodeVisitor * self,ValaDestructor * d)589 vala_code_visitor_real_visit_destructor (ValaCodeVisitor* self,
590                                          ValaDestructor* d)
591 {
592 	g_return_if_fail (d != NULL);
593 }
594 
595 void
vala_code_visitor_visit_destructor(ValaCodeVisitor * self,ValaDestructor * d)596 vala_code_visitor_visit_destructor (ValaCodeVisitor* self,
597                                     ValaDestructor* d)
598 {
599 	g_return_if_fail (self != NULL);
600 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_destructor (self, d);
601 }
602 
603 /**
604  * Visit operation called for type parameters.
605  *
606  * @param p a type parameter
607  */
608 static void
vala_code_visitor_real_visit_type_parameter(ValaCodeVisitor * self,ValaTypeParameter * p)609 vala_code_visitor_real_visit_type_parameter (ValaCodeVisitor* self,
610                                              ValaTypeParameter* p)
611 {
612 	g_return_if_fail (p != NULL);
613 }
614 
615 void
vala_code_visitor_visit_type_parameter(ValaCodeVisitor * self,ValaTypeParameter * p)616 vala_code_visitor_visit_type_parameter (ValaCodeVisitor* self,
617                                         ValaTypeParameter* p)
618 {
619 	g_return_if_fail (self != NULL);
620 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_type_parameter (self, p);
621 }
622 
623 /**
624  * Visit operation called for using directives.
625  *
626  * @param ns a using directive
627  */
628 static void
vala_code_visitor_real_visit_using_directive(ValaCodeVisitor * self,ValaUsingDirective * ns)629 vala_code_visitor_real_visit_using_directive (ValaCodeVisitor* self,
630                                               ValaUsingDirective* ns)
631 {
632 	g_return_if_fail (ns != NULL);
633 }
634 
635 void
vala_code_visitor_visit_using_directive(ValaCodeVisitor * self,ValaUsingDirective * ns)636 vala_code_visitor_visit_using_directive (ValaCodeVisitor* self,
637                                          ValaUsingDirective* ns)
638 {
639 	g_return_if_fail (self != NULL);
640 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_using_directive (self, ns);
641 }
642 
643 /**
644  * Visit operation called for type references.
645  *
646  * @param type a type reference
647  */
648 static void
vala_code_visitor_real_visit_data_type(ValaCodeVisitor * self,ValaDataType * type)649 vala_code_visitor_real_visit_data_type (ValaCodeVisitor* self,
650                                         ValaDataType* type)
651 {
652 	g_return_if_fail (type != NULL);
653 }
654 
655 void
vala_code_visitor_visit_data_type(ValaCodeVisitor * self,ValaDataType * type)656 vala_code_visitor_visit_data_type (ValaCodeVisitor* self,
657                                    ValaDataType* type)
658 {
659 	g_return_if_fail (self != NULL);
660 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_data_type (self, type);
661 }
662 
663 /**
664  * Visit operation called for blocks.
665  *
666  * @param b a block
667  */
668 static void
vala_code_visitor_real_visit_block(ValaCodeVisitor * self,ValaBlock * b)669 vala_code_visitor_real_visit_block (ValaCodeVisitor* self,
670                                     ValaBlock* b)
671 {
672 	g_return_if_fail (b != NULL);
673 }
674 
675 void
vala_code_visitor_visit_block(ValaCodeVisitor * self,ValaBlock * b)676 vala_code_visitor_visit_block (ValaCodeVisitor* self,
677                                ValaBlock* b)
678 {
679 	g_return_if_fail (self != NULL);
680 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_block (self, b);
681 }
682 
683 /**
684  * Visit operation called for empty statements.
685  *
686  * @param stmt an empty statement
687  */
688 static void
vala_code_visitor_real_visit_empty_statement(ValaCodeVisitor * self,ValaEmptyStatement * stmt)689 vala_code_visitor_real_visit_empty_statement (ValaCodeVisitor* self,
690                                               ValaEmptyStatement* stmt)
691 {
692 	g_return_if_fail (stmt != NULL);
693 }
694 
695 void
vala_code_visitor_visit_empty_statement(ValaCodeVisitor * self,ValaEmptyStatement * stmt)696 vala_code_visitor_visit_empty_statement (ValaCodeVisitor* self,
697                                          ValaEmptyStatement* stmt)
698 {
699 	g_return_if_fail (self != NULL);
700 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_empty_statement (self, stmt);
701 }
702 
703 /**
704  * Visit operation called for declaration statements.
705  *
706  * @param stmt a declaration statement
707  */
708 static void
vala_code_visitor_real_visit_declaration_statement(ValaCodeVisitor * self,ValaDeclarationStatement * stmt)709 vala_code_visitor_real_visit_declaration_statement (ValaCodeVisitor* self,
710                                                     ValaDeclarationStatement* stmt)
711 {
712 	g_return_if_fail (stmt != NULL);
713 }
714 
715 void
vala_code_visitor_visit_declaration_statement(ValaCodeVisitor * self,ValaDeclarationStatement * stmt)716 vala_code_visitor_visit_declaration_statement (ValaCodeVisitor* self,
717                                                ValaDeclarationStatement* stmt)
718 {
719 	g_return_if_fail (self != NULL);
720 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_declaration_statement (self, stmt);
721 }
722 
723 /**
724  * Visit operation called for local variables.
725  *
726  * @param local a local variable
727  */
728 static void
vala_code_visitor_real_visit_local_variable(ValaCodeVisitor * self,ValaLocalVariable * local)729 vala_code_visitor_real_visit_local_variable (ValaCodeVisitor* self,
730                                              ValaLocalVariable* local)
731 {
732 	g_return_if_fail (local != NULL);
733 }
734 
735 void
vala_code_visitor_visit_local_variable(ValaCodeVisitor * self,ValaLocalVariable * local)736 vala_code_visitor_visit_local_variable (ValaCodeVisitor* self,
737                                         ValaLocalVariable* local)
738 {
739 	g_return_if_fail (self != NULL);
740 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_local_variable (self, local);
741 }
742 
743 /**
744  * Visit operation called for initializer lists
745  *
746  * @param list an initializer list
747  */
748 static void
vala_code_visitor_real_visit_initializer_list(ValaCodeVisitor * self,ValaInitializerList * list)749 vala_code_visitor_real_visit_initializer_list (ValaCodeVisitor* self,
750                                                ValaInitializerList* list)
751 {
752 	g_return_if_fail (list != NULL);
753 }
754 
755 void
vala_code_visitor_visit_initializer_list(ValaCodeVisitor * self,ValaInitializerList * list)756 vala_code_visitor_visit_initializer_list (ValaCodeVisitor* self,
757                                           ValaInitializerList* list)
758 {
759 	g_return_if_fail (self != NULL);
760 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_initializer_list (self, list);
761 }
762 
763 /**
764  * Visit operation called for expression statements.
765  *
766  * @param stmt an expression statement
767  */
768 static void
vala_code_visitor_real_visit_expression_statement(ValaCodeVisitor * self,ValaExpressionStatement * stmt)769 vala_code_visitor_real_visit_expression_statement (ValaCodeVisitor* self,
770                                                    ValaExpressionStatement* stmt)
771 {
772 	g_return_if_fail (stmt != NULL);
773 }
774 
775 void
vala_code_visitor_visit_expression_statement(ValaCodeVisitor * self,ValaExpressionStatement * stmt)776 vala_code_visitor_visit_expression_statement (ValaCodeVisitor* self,
777                                               ValaExpressionStatement* stmt)
778 {
779 	g_return_if_fail (self != NULL);
780 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_expression_statement (self, stmt);
781 }
782 
783 /**
784  * Visit operation called for if statements.
785  *
786  * @param stmt an if statement
787  */
788 static void
vala_code_visitor_real_visit_if_statement(ValaCodeVisitor * self,ValaIfStatement * stmt)789 vala_code_visitor_real_visit_if_statement (ValaCodeVisitor* self,
790                                            ValaIfStatement* stmt)
791 {
792 	g_return_if_fail (stmt != NULL);
793 }
794 
795 void
vala_code_visitor_visit_if_statement(ValaCodeVisitor * self,ValaIfStatement * stmt)796 vala_code_visitor_visit_if_statement (ValaCodeVisitor* self,
797                                       ValaIfStatement* stmt)
798 {
799 	g_return_if_fail (self != NULL);
800 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_if_statement (self, stmt);
801 }
802 
803 /**
804  * Visit operation called for switch statements.
805  *
806  * @param stmt a switch statement
807  */
808 static void
vala_code_visitor_real_visit_switch_statement(ValaCodeVisitor * self,ValaSwitchStatement * stmt)809 vala_code_visitor_real_visit_switch_statement (ValaCodeVisitor* self,
810                                                ValaSwitchStatement* stmt)
811 {
812 	g_return_if_fail (stmt != NULL);
813 }
814 
815 void
vala_code_visitor_visit_switch_statement(ValaCodeVisitor * self,ValaSwitchStatement * stmt)816 vala_code_visitor_visit_switch_statement (ValaCodeVisitor* self,
817                                           ValaSwitchStatement* stmt)
818 {
819 	g_return_if_fail (self != NULL);
820 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_switch_statement (self, stmt);
821 }
822 
823 /**
824  * Visit operation called for switch sections.
825  *
826  * @param section a switch section
827  */
828 static void
vala_code_visitor_real_visit_switch_section(ValaCodeVisitor * self,ValaSwitchSection * section)829 vala_code_visitor_real_visit_switch_section (ValaCodeVisitor* self,
830                                              ValaSwitchSection* section)
831 {
832 	g_return_if_fail (section != NULL);
833 }
834 
835 void
vala_code_visitor_visit_switch_section(ValaCodeVisitor * self,ValaSwitchSection * section)836 vala_code_visitor_visit_switch_section (ValaCodeVisitor* self,
837                                         ValaSwitchSection* section)
838 {
839 	g_return_if_fail (self != NULL);
840 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_switch_section (self, section);
841 }
842 
843 /**
844  * Visit operation called for switch label.
845  *
846  * @param label a switch label
847  */
848 static void
vala_code_visitor_real_visit_switch_label(ValaCodeVisitor * self,ValaSwitchLabel * label)849 vala_code_visitor_real_visit_switch_label (ValaCodeVisitor* self,
850                                            ValaSwitchLabel* label)
851 {
852 	g_return_if_fail (label != NULL);
853 }
854 
855 void
vala_code_visitor_visit_switch_label(ValaCodeVisitor * self,ValaSwitchLabel * label)856 vala_code_visitor_visit_switch_label (ValaCodeVisitor* self,
857                                       ValaSwitchLabel* label)
858 {
859 	g_return_if_fail (self != NULL);
860 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_switch_label (self, label);
861 }
862 
863 /**
864  * Visit operation called for loops.
865  *
866  * @param stmt a loop
867  */
868 static void
vala_code_visitor_real_visit_loop(ValaCodeVisitor * self,ValaLoop * stmt)869 vala_code_visitor_real_visit_loop (ValaCodeVisitor* self,
870                                    ValaLoop* stmt)
871 {
872 	g_return_if_fail (stmt != NULL);
873 }
874 
875 void
vala_code_visitor_visit_loop(ValaCodeVisitor * self,ValaLoop * stmt)876 vala_code_visitor_visit_loop (ValaCodeVisitor* self,
877                               ValaLoop* stmt)
878 {
879 	g_return_if_fail (self != NULL);
880 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_loop (self, stmt);
881 }
882 
883 /**
884  * Visit operation called for while statements.
885  *
886  * @param stmt an while statement
887  */
888 static void
vala_code_visitor_real_visit_while_statement(ValaCodeVisitor * self,ValaWhileStatement * stmt)889 vala_code_visitor_real_visit_while_statement (ValaCodeVisitor* self,
890                                               ValaWhileStatement* stmt)
891 {
892 	g_return_if_fail (stmt != NULL);
893 }
894 
895 void
vala_code_visitor_visit_while_statement(ValaCodeVisitor * self,ValaWhileStatement * stmt)896 vala_code_visitor_visit_while_statement (ValaCodeVisitor* self,
897                                          ValaWhileStatement* stmt)
898 {
899 	g_return_if_fail (self != NULL);
900 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_while_statement (self, stmt);
901 }
902 
903 /**
904  * Visit operation called for do statements.
905  *
906  * @param stmt a do statement
907  */
908 static void
vala_code_visitor_real_visit_do_statement(ValaCodeVisitor * self,ValaDoStatement * stmt)909 vala_code_visitor_real_visit_do_statement (ValaCodeVisitor* self,
910                                            ValaDoStatement* stmt)
911 {
912 	g_return_if_fail (stmt != NULL);
913 }
914 
915 void
vala_code_visitor_visit_do_statement(ValaCodeVisitor * self,ValaDoStatement * stmt)916 vala_code_visitor_visit_do_statement (ValaCodeVisitor* self,
917                                       ValaDoStatement* stmt)
918 {
919 	g_return_if_fail (self != NULL);
920 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_do_statement (self, stmt);
921 }
922 
923 /**
924  * Visit operation called for for statements.
925  *
926  * @param stmt a for statement
927  */
928 static void
vala_code_visitor_real_visit_for_statement(ValaCodeVisitor * self,ValaForStatement * stmt)929 vala_code_visitor_real_visit_for_statement (ValaCodeVisitor* self,
930                                             ValaForStatement* stmt)
931 {
932 	g_return_if_fail (stmt != NULL);
933 }
934 
935 void
vala_code_visitor_visit_for_statement(ValaCodeVisitor * self,ValaForStatement * stmt)936 vala_code_visitor_visit_for_statement (ValaCodeVisitor* self,
937                                        ValaForStatement* stmt)
938 {
939 	g_return_if_fail (self != NULL);
940 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_for_statement (self, stmt);
941 }
942 
943 /**
944  * Visit operation called for foreach statements.
945  *
946  * @param stmt a foreach statement
947  */
948 static void
vala_code_visitor_real_visit_foreach_statement(ValaCodeVisitor * self,ValaForeachStatement * stmt)949 vala_code_visitor_real_visit_foreach_statement (ValaCodeVisitor* self,
950                                                 ValaForeachStatement* stmt)
951 {
952 	g_return_if_fail (stmt != NULL);
953 }
954 
955 void
vala_code_visitor_visit_foreach_statement(ValaCodeVisitor * self,ValaForeachStatement * stmt)956 vala_code_visitor_visit_foreach_statement (ValaCodeVisitor* self,
957                                            ValaForeachStatement* stmt)
958 {
959 	g_return_if_fail (self != NULL);
960 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_foreach_statement (self, stmt);
961 }
962 
963 /**
964  * Visit operation called for break statements.
965  *
966  * @param stmt a break statement
967  */
968 static void
vala_code_visitor_real_visit_break_statement(ValaCodeVisitor * self,ValaBreakStatement * stmt)969 vala_code_visitor_real_visit_break_statement (ValaCodeVisitor* self,
970                                               ValaBreakStatement* stmt)
971 {
972 	g_return_if_fail (stmt != NULL);
973 }
974 
975 void
vala_code_visitor_visit_break_statement(ValaCodeVisitor * self,ValaBreakStatement * stmt)976 vala_code_visitor_visit_break_statement (ValaCodeVisitor* self,
977                                          ValaBreakStatement* stmt)
978 {
979 	g_return_if_fail (self != NULL);
980 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_break_statement (self, stmt);
981 }
982 
983 /**
984  * Visit operation called for continue statements.
985  *
986  * @param stmt a continue statement
987  */
988 static void
vala_code_visitor_real_visit_continue_statement(ValaCodeVisitor * self,ValaContinueStatement * stmt)989 vala_code_visitor_real_visit_continue_statement (ValaCodeVisitor* self,
990                                                  ValaContinueStatement* stmt)
991 {
992 	g_return_if_fail (stmt != NULL);
993 }
994 
995 void
vala_code_visitor_visit_continue_statement(ValaCodeVisitor * self,ValaContinueStatement * stmt)996 vala_code_visitor_visit_continue_statement (ValaCodeVisitor* self,
997                                             ValaContinueStatement* stmt)
998 {
999 	g_return_if_fail (self != NULL);
1000 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_continue_statement (self, stmt);
1001 }
1002 
1003 /**
1004  * Visit operation called for return statements.
1005  *
1006  * @param stmt a return statement
1007  */
1008 static void
vala_code_visitor_real_visit_return_statement(ValaCodeVisitor * self,ValaReturnStatement * stmt)1009 vala_code_visitor_real_visit_return_statement (ValaCodeVisitor* self,
1010                                                ValaReturnStatement* stmt)
1011 {
1012 	g_return_if_fail (stmt != NULL);
1013 }
1014 
1015 void
vala_code_visitor_visit_return_statement(ValaCodeVisitor * self,ValaReturnStatement * stmt)1016 vala_code_visitor_visit_return_statement (ValaCodeVisitor* self,
1017                                           ValaReturnStatement* stmt)
1018 {
1019 	g_return_if_fail (self != NULL);
1020 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_return_statement (self, stmt);
1021 }
1022 
1023 /**
1024  * Visit operation called for yield statement.
1025  *
1026  * @param y a yield statement
1027  */
1028 static void
vala_code_visitor_real_visit_yield_statement(ValaCodeVisitor * self,ValaYieldStatement * y)1029 vala_code_visitor_real_visit_yield_statement (ValaCodeVisitor* self,
1030                                               ValaYieldStatement* y)
1031 {
1032 	g_return_if_fail (y != NULL);
1033 }
1034 
1035 void
vala_code_visitor_visit_yield_statement(ValaCodeVisitor * self,ValaYieldStatement * y)1036 vala_code_visitor_visit_yield_statement (ValaCodeVisitor* self,
1037                                          ValaYieldStatement* y)
1038 {
1039 	g_return_if_fail (self != NULL);
1040 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_yield_statement (self, y);
1041 }
1042 
1043 /**
1044  * Visit operation called for throw statements.
1045  *
1046  * @param stmt a throw statement
1047  */
1048 static void
vala_code_visitor_real_visit_throw_statement(ValaCodeVisitor * self,ValaThrowStatement * stmt)1049 vala_code_visitor_real_visit_throw_statement (ValaCodeVisitor* self,
1050                                               ValaThrowStatement* stmt)
1051 {
1052 	g_return_if_fail (stmt != NULL);
1053 }
1054 
1055 void
vala_code_visitor_visit_throw_statement(ValaCodeVisitor * self,ValaThrowStatement * stmt)1056 vala_code_visitor_visit_throw_statement (ValaCodeVisitor* self,
1057                                          ValaThrowStatement* stmt)
1058 {
1059 	g_return_if_fail (self != NULL);
1060 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_throw_statement (self, stmt);
1061 }
1062 
1063 /**
1064  * Visit operation called for try statements.
1065  *
1066  * @param stmt a try statement
1067  */
1068 static void
vala_code_visitor_real_visit_try_statement(ValaCodeVisitor * self,ValaTryStatement * stmt)1069 vala_code_visitor_real_visit_try_statement (ValaCodeVisitor* self,
1070                                             ValaTryStatement* stmt)
1071 {
1072 	g_return_if_fail (stmt != NULL);
1073 }
1074 
1075 void
vala_code_visitor_visit_try_statement(ValaCodeVisitor * self,ValaTryStatement * stmt)1076 vala_code_visitor_visit_try_statement (ValaCodeVisitor* self,
1077                                        ValaTryStatement* stmt)
1078 {
1079 	g_return_if_fail (self != NULL);
1080 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_try_statement (self, stmt);
1081 }
1082 
1083 /**
1084  * Visit operation called for catch clauses.
1085  *
1086  * @param clause a catch clause
1087  */
1088 static void
vala_code_visitor_real_visit_catch_clause(ValaCodeVisitor * self,ValaCatchClause * clause)1089 vala_code_visitor_real_visit_catch_clause (ValaCodeVisitor* self,
1090                                            ValaCatchClause* clause)
1091 {
1092 	g_return_if_fail (clause != NULL);
1093 }
1094 
1095 void
vala_code_visitor_visit_catch_clause(ValaCodeVisitor * self,ValaCatchClause * clause)1096 vala_code_visitor_visit_catch_clause (ValaCodeVisitor* self,
1097                                       ValaCatchClause* clause)
1098 {
1099 	g_return_if_fail (self != NULL);
1100 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_catch_clause (self, clause);
1101 }
1102 
1103 /**
1104  * Visit operation called for lock statements before the body has been visited.
1105  *
1106  * @param stmt a lock statement
1107  */
1108 static void
vala_code_visitor_real_visit_lock_statement(ValaCodeVisitor * self,ValaLockStatement * stmt)1109 vala_code_visitor_real_visit_lock_statement (ValaCodeVisitor* self,
1110                                              ValaLockStatement* stmt)
1111 {
1112 	g_return_if_fail (stmt != NULL);
1113 }
1114 
1115 void
vala_code_visitor_visit_lock_statement(ValaCodeVisitor * self,ValaLockStatement * stmt)1116 vala_code_visitor_visit_lock_statement (ValaCodeVisitor* self,
1117                                         ValaLockStatement* stmt)
1118 {
1119 	g_return_if_fail (self != NULL);
1120 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_lock_statement (self, stmt);
1121 }
1122 
1123 /**
1124  * Visit operation called for unlock statements.
1125  *
1126  * @param stmt an unlock statement
1127  */
1128 static void
vala_code_visitor_real_visit_unlock_statement(ValaCodeVisitor * self,ValaUnlockStatement * stmt)1129 vala_code_visitor_real_visit_unlock_statement (ValaCodeVisitor* self,
1130                                                ValaUnlockStatement* stmt)
1131 {
1132 	g_return_if_fail (stmt != NULL);
1133 }
1134 
1135 void
vala_code_visitor_visit_unlock_statement(ValaCodeVisitor * self,ValaUnlockStatement * stmt)1136 vala_code_visitor_visit_unlock_statement (ValaCodeVisitor* self,
1137                                           ValaUnlockStatement* stmt)
1138 {
1139 	g_return_if_fail (self != NULL);
1140 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_unlock_statement (self, stmt);
1141 }
1142 
1143 /**
1144  * Visit operation called for delete statements.
1145  *
1146  * @param stmt a delete statement
1147  */
1148 static void
vala_code_visitor_real_visit_delete_statement(ValaCodeVisitor * self,ValaDeleteStatement * stmt)1149 vala_code_visitor_real_visit_delete_statement (ValaCodeVisitor* self,
1150                                                ValaDeleteStatement* stmt)
1151 {
1152 	g_return_if_fail (stmt != NULL);
1153 }
1154 
1155 void
vala_code_visitor_visit_delete_statement(ValaCodeVisitor * self,ValaDeleteStatement * stmt)1156 vala_code_visitor_visit_delete_statement (ValaCodeVisitor* self,
1157                                           ValaDeleteStatement* stmt)
1158 {
1159 	g_return_if_fail (self != NULL);
1160 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_delete_statement (self, stmt);
1161 }
1162 
1163 /**
1164  * Visit operations called for expressions.
1165  *
1166  * @param expr an expression
1167  */
1168 static void
vala_code_visitor_real_visit_expression(ValaCodeVisitor * self,ValaExpression * expr)1169 vala_code_visitor_real_visit_expression (ValaCodeVisitor* self,
1170                                          ValaExpression* expr)
1171 {
1172 	g_return_if_fail (expr != NULL);
1173 }
1174 
1175 void
vala_code_visitor_visit_expression(ValaCodeVisitor * self,ValaExpression * expr)1176 vala_code_visitor_visit_expression (ValaCodeVisitor* self,
1177                                     ValaExpression* expr)
1178 {
1179 	g_return_if_fail (self != NULL);
1180 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_expression (self, expr);
1181 }
1182 
1183 /**
1184  * Visit operations called for array creation expressions.
1185  *
1186  * @param expr an array creation expression
1187  */
1188 static void
vala_code_visitor_real_visit_array_creation_expression(ValaCodeVisitor * self,ValaArrayCreationExpression * expr)1189 vala_code_visitor_real_visit_array_creation_expression (ValaCodeVisitor* self,
1190                                                         ValaArrayCreationExpression* expr)
1191 {
1192 	g_return_if_fail (expr != NULL);
1193 }
1194 
1195 void
vala_code_visitor_visit_array_creation_expression(ValaCodeVisitor * self,ValaArrayCreationExpression * expr)1196 vala_code_visitor_visit_array_creation_expression (ValaCodeVisitor* self,
1197                                                    ValaArrayCreationExpression* expr)
1198 {
1199 	g_return_if_fail (self != NULL);
1200 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_array_creation_expression (self, expr);
1201 }
1202 
1203 /**
1204  * Visit operation called for boolean literals.
1205  *
1206  * @param lit a boolean literal
1207  */
1208 static void
vala_code_visitor_real_visit_boolean_literal(ValaCodeVisitor * self,ValaBooleanLiteral * lit)1209 vala_code_visitor_real_visit_boolean_literal (ValaCodeVisitor* self,
1210                                               ValaBooleanLiteral* lit)
1211 {
1212 	g_return_if_fail (lit != NULL);
1213 }
1214 
1215 void
vala_code_visitor_visit_boolean_literal(ValaCodeVisitor * self,ValaBooleanLiteral * lit)1216 vala_code_visitor_visit_boolean_literal (ValaCodeVisitor* self,
1217                                          ValaBooleanLiteral* lit)
1218 {
1219 	g_return_if_fail (self != NULL);
1220 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_boolean_literal (self, lit);
1221 }
1222 
1223 /**
1224  * Visit operation called for character literals.
1225  *
1226  * @param lit a character literal
1227  */
1228 static void
vala_code_visitor_real_visit_character_literal(ValaCodeVisitor * self,ValaCharacterLiteral * lit)1229 vala_code_visitor_real_visit_character_literal (ValaCodeVisitor* self,
1230                                                 ValaCharacterLiteral* lit)
1231 {
1232 	g_return_if_fail (lit != NULL);
1233 }
1234 
1235 void
vala_code_visitor_visit_character_literal(ValaCodeVisitor * self,ValaCharacterLiteral * lit)1236 vala_code_visitor_visit_character_literal (ValaCodeVisitor* self,
1237                                            ValaCharacterLiteral* lit)
1238 {
1239 	g_return_if_fail (self != NULL);
1240 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_character_literal (self, lit);
1241 }
1242 
1243 /**
1244  * Visit operation called for integer literals.
1245  *
1246  * @param lit an integer literal
1247  */
1248 static void
vala_code_visitor_real_visit_integer_literal(ValaCodeVisitor * self,ValaIntegerLiteral * lit)1249 vala_code_visitor_real_visit_integer_literal (ValaCodeVisitor* self,
1250                                               ValaIntegerLiteral* lit)
1251 {
1252 	g_return_if_fail (lit != NULL);
1253 }
1254 
1255 void
vala_code_visitor_visit_integer_literal(ValaCodeVisitor * self,ValaIntegerLiteral * lit)1256 vala_code_visitor_visit_integer_literal (ValaCodeVisitor* self,
1257                                          ValaIntegerLiteral* lit)
1258 {
1259 	g_return_if_fail (self != NULL);
1260 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_integer_literal (self, lit);
1261 }
1262 
1263 /**
1264  * Visit operation called for real literals.
1265  *
1266  * @param lit a real literal
1267  */
1268 static void
vala_code_visitor_real_visit_real_literal(ValaCodeVisitor * self,ValaRealLiteral * lit)1269 vala_code_visitor_real_visit_real_literal (ValaCodeVisitor* self,
1270                                            ValaRealLiteral* lit)
1271 {
1272 	g_return_if_fail (lit != NULL);
1273 }
1274 
1275 void
vala_code_visitor_visit_real_literal(ValaCodeVisitor * self,ValaRealLiteral * lit)1276 vala_code_visitor_visit_real_literal (ValaCodeVisitor* self,
1277                                       ValaRealLiteral* lit)
1278 {
1279 	g_return_if_fail (self != NULL);
1280 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_real_literal (self, lit);
1281 }
1282 
1283 /**
1284  * Visit operation called for regex literals.
1285  *
1286  * @param lit a regex literal
1287  */
1288 static void
vala_code_visitor_real_visit_regex_literal(ValaCodeVisitor * self,ValaRegexLiteral * lit)1289 vala_code_visitor_real_visit_regex_literal (ValaCodeVisitor* self,
1290                                             ValaRegexLiteral* lit)
1291 {
1292 	g_return_if_fail (lit != NULL);
1293 }
1294 
1295 void
vala_code_visitor_visit_regex_literal(ValaCodeVisitor * self,ValaRegexLiteral * lit)1296 vala_code_visitor_visit_regex_literal (ValaCodeVisitor* self,
1297                                        ValaRegexLiteral* lit)
1298 {
1299 	g_return_if_fail (self != NULL);
1300 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_regex_literal (self, lit);
1301 }
1302 
1303 /**
1304  * Visit operation called for string literals.
1305  *
1306  * @param lit a string literal
1307  */
1308 static void
vala_code_visitor_real_visit_string_literal(ValaCodeVisitor * self,ValaStringLiteral * lit)1309 vala_code_visitor_real_visit_string_literal (ValaCodeVisitor* self,
1310                                              ValaStringLiteral* lit)
1311 {
1312 	g_return_if_fail (lit != NULL);
1313 }
1314 
1315 void
vala_code_visitor_visit_string_literal(ValaCodeVisitor * self,ValaStringLiteral * lit)1316 vala_code_visitor_visit_string_literal (ValaCodeVisitor* self,
1317                                         ValaStringLiteral* lit)
1318 {
1319 	g_return_if_fail (self != NULL);
1320 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_string_literal (self, lit);
1321 }
1322 
1323 /**
1324  * Visit operation called for string templates.
1325  *
1326  * @param tmpl a string template
1327  */
1328 static void
vala_code_visitor_real_visit_template(ValaCodeVisitor * self,ValaTemplate * tmpl)1329 vala_code_visitor_real_visit_template (ValaCodeVisitor* self,
1330                                        ValaTemplate* tmpl)
1331 {
1332 	g_return_if_fail (tmpl != NULL);
1333 }
1334 
1335 void
vala_code_visitor_visit_template(ValaCodeVisitor * self,ValaTemplate * tmpl)1336 vala_code_visitor_visit_template (ValaCodeVisitor* self,
1337                                   ValaTemplate* tmpl)
1338 {
1339 	g_return_if_fail (self != NULL);
1340 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_template (self, tmpl);
1341 }
1342 
1343 /**
1344  * Visit operation called for tuples.
1345  *
1346  * @param tuple a tuple
1347  */
1348 static void
vala_code_visitor_real_visit_tuple(ValaCodeVisitor * self,ValaTuple * tuple)1349 vala_code_visitor_real_visit_tuple (ValaCodeVisitor* self,
1350                                     ValaTuple* tuple)
1351 {
1352 	g_return_if_fail (tuple != NULL);
1353 }
1354 
1355 void
vala_code_visitor_visit_tuple(ValaCodeVisitor * self,ValaTuple * tuple)1356 vala_code_visitor_visit_tuple (ValaCodeVisitor* self,
1357                                ValaTuple* tuple)
1358 {
1359 	g_return_if_fail (self != NULL);
1360 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_tuple (self, tuple);
1361 }
1362 
1363 /**
1364  * Visit operation called for null literals.
1365  *
1366  * @param lit a null literal
1367  */
1368 static void
vala_code_visitor_real_visit_null_literal(ValaCodeVisitor * self,ValaNullLiteral * lit)1369 vala_code_visitor_real_visit_null_literal (ValaCodeVisitor* self,
1370                                            ValaNullLiteral* lit)
1371 {
1372 	g_return_if_fail (lit != NULL);
1373 }
1374 
1375 void
vala_code_visitor_visit_null_literal(ValaCodeVisitor * self,ValaNullLiteral * lit)1376 vala_code_visitor_visit_null_literal (ValaCodeVisitor* self,
1377                                       ValaNullLiteral* lit)
1378 {
1379 	g_return_if_fail (self != NULL);
1380 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_null_literal (self, lit);
1381 }
1382 
1383 /**
1384  * Visit operation called for member access expressions.
1385  *
1386  * @param expr a member access expression
1387  */
1388 static void
vala_code_visitor_real_visit_member_access(ValaCodeVisitor * self,ValaMemberAccess * expr)1389 vala_code_visitor_real_visit_member_access (ValaCodeVisitor* self,
1390                                             ValaMemberAccess* expr)
1391 {
1392 	g_return_if_fail (expr != NULL);
1393 }
1394 
1395 void
vala_code_visitor_visit_member_access(ValaCodeVisitor * self,ValaMemberAccess * expr)1396 vala_code_visitor_visit_member_access (ValaCodeVisitor* self,
1397                                        ValaMemberAccess* expr)
1398 {
1399 	g_return_if_fail (self != NULL);
1400 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_member_access (self, expr);
1401 }
1402 
1403 /**
1404  * Visit operation called for invocation expressions.
1405  *
1406  * @param expr an invocation expression
1407  */
1408 static void
vala_code_visitor_real_visit_method_call(ValaCodeVisitor * self,ValaMethodCall * expr)1409 vala_code_visitor_real_visit_method_call (ValaCodeVisitor* self,
1410                                           ValaMethodCall* expr)
1411 {
1412 	g_return_if_fail (expr != NULL);
1413 }
1414 
1415 void
vala_code_visitor_visit_method_call(ValaCodeVisitor * self,ValaMethodCall * expr)1416 vala_code_visitor_visit_method_call (ValaCodeVisitor* self,
1417                                      ValaMethodCall* expr)
1418 {
1419 	g_return_if_fail (self != NULL);
1420 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_method_call (self, expr);
1421 }
1422 
1423 /**
1424  * Visit operation called for element access expressions.
1425  *
1426  * @param expr an element access expression
1427  */
1428 static void
vala_code_visitor_real_visit_element_access(ValaCodeVisitor * self,ValaElementAccess * expr)1429 vala_code_visitor_real_visit_element_access (ValaCodeVisitor* self,
1430                                              ValaElementAccess* expr)
1431 {
1432 	g_return_if_fail (expr != NULL);
1433 }
1434 
1435 void
vala_code_visitor_visit_element_access(ValaCodeVisitor * self,ValaElementAccess * expr)1436 vala_code_visitor_visit_element_access (ValaCodeVisitor* self,
1437                                         ValaElementAccess* expr)
1438 {
1439 	g_return_if_fail (self != NULL);
1440 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_element_access (self, expr);
1441 }
1442 
1443 /**
1444  * Visit operation called for array slice expressions.
1445  *
1446  * @param expr an array slice expression
1447  */
1448 static void
vala_code_visitor_real_visit_slice_expression(ValaCodeVisitor * self,ValaSliceExpression * expr)1449 vala_code_visitor_real_visit_slice_expression (ValaCodeVisitor* self,
1450                                                ValaSliceExpression* expr)
1451 {
1452 	g_return_if_fail (expr != NULL);
1453 }
1454 
1455 void
vala_code_visitor_visit_slice_expression(ValaCodeVisitor * self,ValaSliceExpression * expr)1456 vala_code_visitor_visit_slice_expression (ValaCodeVisitor* self,
1457                                           ValaSliceExpression* expr)
1458 {
1459 	g_return_if_fail (self != NULL);
1460 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_slice_expression (self, expr);
1461 }
1462 
1463 /**
1464  * Visit operation called for base access expressions.
1465  *
1466  * @param expr a base access expression
1467  */
1468 static void
vala_code_visitor_real_visit_base_access(ValaCodeVisitor * self,ValaBaseAccess * expr)1469 vala_code_visitor_real_visit_base_access (ValaCodeVisitor* self,
1470                                           ValaBaseAccess* expr)
1471 {
1472 	g_return_if_fail (expr != NULL);
1473 }
1474 
1475 void
vala_code_visitor_visit_base_access(ValaCodeVisitor * self,ValaBaseAccess * expr)1476 vala_code_visitor_visit_base_access (ValaCodeVisitor* self,
1477                                      ValaBaseAccess* expr)
1478 {
1479 	g_return_if_fail (self != NULL);
1480 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_base_access (self, expr);
1481 }
1482 
1483 /**
1484  * Visit operation called for postfix expressions.
1485  *
1486  * @param expr a postfix expression
1487  */
1488 static void
vala_code_visitor_real_visit_postfix_expression(ValaCodeVisitor * self,ValaPostfixExpression * expr)1489 vala_code_visitor_real_visit_postfix_expression (ValaCodeVisitor* self,
1490                                                  ValaPostfixExpression* expr)
1491 {
1492 	g_return_if_fail (expr != NULL);
1493 }
1494 
1495 void
vala_code_visitor_visit_postfix_expression(ValaCodeVisitor * self,ValaPostfixExpression * expr)1496 vala_code_visitor_visit_postfix_expression (ValaCodeVisitor* self,
1497                                             ValaPostfixExpression* expr)
1498 {
1499 	g_return_if_fail (self != NULL);
1500 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_postfix_expression (self, expr);
1501 }
1502 
1503 /**
1504  * Visit operation called for object creation expressions.
1505  *
1506  * @param expr an object creation expression
1507  */
1508 static void
vala_code_visitor_real_visit_object_creation_expression(ValaCodeVisitor * self,ValaObjectCreationExpression * expr)1509 vala_code_visitor_real_visit_object_creation_expression (ValaCodeVisitor* self,
1510                                                          ValaObjectCreationExpression* expr)
1511 {
1512 	g_return_if_fail (expr != NULL);
1513 }
1514 
1515 void
vala_code_visitor_visit_object_creation_expression(ValaCodeVisitor * self,ValaObjectCreationExpression * expr)1516 vala_code_visitor_visit_object_creation_expression (ValaCodeVisitor* self,
1517                                                     ValaObjectCreationExpression* expr)
1518 {
1519 	g_return_if_fail (self != NULL);
1520 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_object_creation_expression (self, expr);
1521 }
1522 
1523 /**
1524  * Visit operation called for sizeof expressions.
1525  *
1526  * @param expr a sizeof expression
1527  */
1528 static void
vala_code_visitor_real_visit_sizeof_expression(ValaCodeVisitor * self,ValaSizeofExpression * expr)1529 vala_code_visitor_real_visit_sizeof_expression (ValaCodeVisitor* self,
1530                                                 ValaSizeofExpression* expr)
1531 {
1532 	g_return_if_fail (expr != NULL);
1533 }
1534 
1535 void
vala_code_visitor_visit_sizeof_expression(ValaCodeVisitor * self,ValaSizeofExpression * expr)1536 vala_code_visitor_visit_sizeof_expression (ValaCodeVisitor* self,
1537                                            ValaSizeofExpression* expr)
1538 {
1539 	g_return_if_fail (self != NULL);
1540 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_sizeof_expression (self, expr);
1541 }
1542 
1543 /**
1544  * Visit operation called for typeof expressions.
1545  *
1546  * @param expr a typeof expression
1547  */
1548 static void
vala_code_visitor_real_visit_typeof_expression(ValaCodeVisitor * self,ValaTypeofExpression * expr)1549 vala_code_visitor_real_visit_typeof_expression (ValaCodeVisitor* self,
1550                                                 ValaTypeofExpression* expr)
1551 {
1552 	g_return_if_fail (expr != NULL);
1553 }
1554 
1555 void
vala_code_visitor_visit_typeof_expression(ValaCodeVisitor * self,ValaTypeofExpression * expr)1556 vala_code_visitor_visit_typeof_expression (ValaCodeVisitor* self,
1557                                            ValaTypeofExpression* expr)
1558 {
1559 	g_return_if_fail (self != NULL);
1560 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_typeof_expression (self, expr);
1561 }
1562 
1563 /**
1564  * Visit operation called for unary expressions.
1565  *
1566  * @param expr an unary expression
1567  */
1568 static void
vala_code_visitor_real_visit_unary_expression(ValaCodeVisitor * self,ValaUnaryExpression * expr)1569 vala_code_visitor_real_visit_unary_expression (ValaCodeVisitor* self,
1570                                                ValaUnaryExpression* expr)
1571 {
1572 	g_return_if_fail (expr != NULL);
1573 }
1574 
1575 void
vala_code_visitor_visit_unary_expression(ValaCodeVisitor * self,ValaUnaryExpression * expr)1576 vala_code_visitor_visit_unary_expression (ValaCodeVisitor* self,
1577                                           ValaUnaryExpression* expr)
1578 {
1579 	g_return_if_fail (self != NULL);
1580 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_unary_expression (self, expr);
1581 }
1582 
1583 /**
1584  * Visit operation called for call expressions.
1585  *
1586  * @param expr a call expression
1587  */
1588 static void
vala_code_visitor_real_visit_cast_expression(ValaCodeVisitor * self,ValaCastExpression * expr)1589 vala_code_visitor_real_visit_cast_expression (ValaCodeVisitor* self,
1590                                               ValaCastExpression* expr)
1591 {
1592 	g_return_if_fail (expr != NULL);
1593 }
1594 
1595 void
vala_code_visitor_visit_cast_expression(ValaCodeVisitor * self,ValaCastExpression * expr)1596 vala_code_visitor_visit_cast_expression (ValaCodeVisitor* self,
1597                                          ValaCastExpression* expr)
1598 {
1599 	g_return_if_fail (self != NULL);
1600 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_cast_expression (self, expr);
1601 }
1602 
1603 /**
1604  * Visit operation called for named arguments.
1605  *
1606  * @param expr a named argument
1607  */
1608 static void
vala_code_visitor_real_visit_named_argument(ValaCodeVisitor * self,ValaNamedArgument * expr)1609 vala_code_visitor_real_visit_named_argument (ValaCodeVisitor* self,
1610                                              ValaNamedArgument* expr)
1611 {
1612 	g_return_if_fail (expr != NULL);
1613 }
1614 
1615 void
vala_code_visitor_visit_named_argument(ValaCodeVisitor * self,ValaNamedArgument * expr)1616 vala_code_visitor_visit_named_argument (ValaCodeVisitor* self,
1617                                         ValaNamedArgument* expr)
1618 {
1619 	g_return_if_fail (self != NULL);
1620 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_named_argument (self, expr);
1621 }
1622 
1623 /**
1624  * Visit operation called for pointer indirections.
1625  *
1626  * @param expr a pointer indirection
1627  */
1628 static void
vala_code_visitor_real_visit_pointer_indirection(ValaCodeVisitor * self,ValaPointerIndirection * expr)1629 vala_code_visitor_real_visit_pointer_indirection (ValaCodeVisitor* self,
1630                                                   ValaPointerIndirection* expr)
1631 {
1632 	g_return_if_fail (expr != NULL);
1633 }
1634 
1635 void
vala_code_visitor_visit_pointer_indirection(ValaCodeVisitor * self,ValaPointerIndirection * expr)1636 vala_code_visitor_visit_pointer_indirection (ValaCodeVisitor* self,
1637                                              ValaPointerIndirection* expr)
1638 {
1639 	g_return_if_fail (self != NULL);
1640 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_pointer_indirection (self, expr);
1641 }
1642 
1643 /**
1644  * Visit operation called for address-of expressions.
1645  *
1646  * @param expr an address-of expression
1647  */
1648 static void
vala_code_visitor_real_visit_addressof_expression(ValaCodeVisitor * self,ValaAddressofExpression * expr)1649 vala_code_visitor_real_visit_addressof_expression (ValaCodeVisitor* self,
1650                                                    ValaAddressofExpression* expr)
1651 {
1652 	g_return_if_fail (expr != NULL);
1653 }
1654 
1655 void
vala_code_visitor_visit_addressof_expression(ValaCodeVisitor * self,ValaAddressofExpression * expr)1656 vala_code_visitor_visit_addressof_expression (ValaCodeVisitor* self,
1657                                               ValaAddressofExpression* expr)
1658 {
1659 	g_return_if_fail (self != NULL);
1660 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_addressof_expression (self, expr);
1661 }
1662 
1663 /**
1664  * Visit operation called for reference transfer expressions.
1665  *
1666  * @param expr a reference transfer expression
1667  */
1668 static void
vala_code_visitor_real_visit_reference_transfer_expression(ValaCodeVisitor * self,ValaReferenceTransferExpression * expr)1669 vala_code_visitor_real_visit_reference_transfer_expression (ValaCodeVisitor* self,
1670                                                             ValaReferenceTransferExpression* expr)
1671 {
1672 	g_return_if_fail (expr != NULL);
1673 }
1674 
1675 void
vala_code_visitor_visit_reference_transfer_expression(ValaCodeVisitor * self,ValaReferenceTransferExpression * expr)1676 vala_code_visitor_visit_reference_transfer_expression (ValaCodeVisitor* self,
1677                                                        ValaReferenceTransferExpression* expr)
1678 {
1679 	g_return_if_fail (self != NULL);
1680 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_reference_transfer_expression (self, expr);
1681 }
1682 
1683 /**
1684  * Visit operation called for binary expressions.
1685  *
1686  * @param expr a binary expression
1687  */
1688 static void
vala_code_visitor_real_visit_binary_expression(ValaCodeVisitor * self,ValaBinaryExpression * expr)1689 vala_code_visitor_real_visit_binary_expression (ValaCodeVisitor* self,
1690                                                 ValaBinaryExpression* expr)
1691 {
1692 	g_return_if_fail (expr != NULL);
1693 }
1694 
1695 void
vala_code_visitor_visit_binary_expression(ValaCodeVisitor * self,ValaBinaryExpression * expr)1696 vala_code_visitor_visit_binary_expression (ValaCodeVisitor* self,
1697                                            ValaBinaryExpression* expr)
1698 {
1699 	g_return_if_fail (self != NULL);
1700 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_binary_expression (self, expr);
1701 }
1702 
1703 /**
1704  * Visit operation called for type checks.
1705  *
1706  * @param expr a type check expression
1707  */
1708 static void
vala_code_visitor_real_visit_type_check(ValaCodeVisitor * self,ValaTypeCheck * expr)1709 vala_code_visitor_real_visit_type_check (ValaCodeVisitor* self,
1710                                          ValaTypeCheck* expr)
1711 {
1712 	g_return_if_fail (expr != NULL);
1713 }
1714 
1715 void
vala_code_visitor_visit_type_check(ValaCodeVisitor * self,ValaTypeCheck * expr)1716 vala_code_visitor_visit_type_check (ValaCodeVisitor* self,
1717                                     ValaTypeCheck* expr)
1718 {
1719 	g_return_if_fail (self != NULL);
1720 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_type_check (self, expr);
1721 }
1722 
1723 /**
1724  * Visit operation called for conditional expressions.
1725  *
1726  * @param expr a conditional expression
1727  */
1728 static void
vala_code_visitor_real_visit_conditional_expression(ValaCodeVisitor * self,ValaConditionalExpression * expr)1729 vala_code_visitor_real_visit_conditional_expression (ValaCodeVisitor* self,
1730                                                      ValaConditionalExpression* expr)
1731 {
1732 	g_return_if_fail (expr != NULL);
1733 }
1734 
1735 void
vala_code_visitor_visit_conditional_expression(ValaCodeVisitor * self,ValaConditionalExpression * expr)1736 vala_code_visitor_visit_conditional_expression (ValaCodeVisitor* self,
1737                                                 ValaConditionalExpression* expr)
1738 {
1739 	g_return_if_fail (self != NULL);
1740 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_conditional_expression (self, expr);
1741 }
1742 
1743 /**
1744  * Visit operation called for lambda expressions.
1745  *
1746  * @param expr a lambda expression
1747  */
1748 static void
vala_code_visitor_real_visit_lambda_expression(ValaCodeVisitor * self,ValaLambdaExpression * expr)1749 vala_code_visitor_real_visit_lambda_expression (ValaCodeVisitor* self,
1750                                                 ValaLambdaExpression* expr)
1751 {
1752 	g_return_if_fail (expr != NULL);
1753 }
1754 
1755 void
vala_code_visitor_visit_lambda_expression(ValaCodeVisitor * self,ValaLambdaExpression * expr)1756 vala_code_visitor_visit_lambda_expression (ValaCodeVisitor* self,
1757                                            ValaLambdaExpression* expr)
1758 {
1759 	g_return_if_fail (self != NULL);
1760 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_lambda_expression (self, expr);
1761 }
1762 
1763 /**
1764  * Visit operation called for assignments.
1765  *
1766  * @param a an assignment
1767  */
1768 static void
vala_code_visitor_real_visit_assignment(ValaCodeVisitor * self,ValaAssignment * a)1769 vala_code_visitor_real_visit_assignment (ValaCodeVisitor* self,
1770                                          ValaAssignment* a)
1771 {
1772 	g_return_if_fail (a != NULL);
1773 }
1774 
1775 void
vala_code_visitor_visit_assignment(ValaCodeVisitor * self,ValaAssignment * a)1776 vala_code_visitor_visit_assignment (ValaCodeVisitor* self,
1777                                     ValaAssignment* a)
1778 {
1779 	g_return_if_fail (self != NULL);
1780 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_assignment (self, a);
1781 }
1782 
1783 /**
1784  * Visit operation called at end of full expressions.
1785  *
1786  * @param expr a full expression
1787  */
1788 static void
vala_code_visitor_real_visit_end_full_expression(ValaCodeVisitor * self,ValaExpression * expr)1789 vala_code_visitor_real_visit_end_full_expression (ValaCodeVisitor* self,
1790                                                   ValaExpression* expr)
1791 {
1792 	g_return_if_fail (expr != NULL);
1793 }
1794 
1795 void
vala_code_visitor_visit_end_full_expression(ValaCodeVisitor * self,ValaExpression * expr)1796 vala_code_visitor_visit_end_full_expression (ValaCodeVisitor* self,
1797                                              ValaExpression* expr)
1798 {
1799 	g_return_if_fail (self != NULL);
1800 	VALA_CODE_VISITOR_GET_CLASS (self)->visit_end_full_expression (self, expr);
1801 }
1802 
1803 ValaCodeVisitor*
vala_code_visitor_construct(GType object_type)1804 vala_code_visitor_construct (GType object_type)
1805 {
1806 	ValaCodeVisitor* self = NULL;
1807 	self = (ValaCodeVisitor*) g_type_create_instance (object_type);
1808 	return self;
1809 }
1810 
1811 static void
vala_value_code_visitor_init(GValue * value)1812 vala_value_code_visitor_init (GValue* value)
1813 {
1814 	value->data[0].v_pointer = NULL;
1815 }
1816 
1817 static void
vala_value_code_visitor_free_value(GValue * value)1818 vala_value_code_visitor_free_value (GValue* value)
1819 {
1820 	if (value->data[0].v_pointer) {
1821 		vala_code_visitor_unref (value->data[0].v_pointer);
1822 	}
1823 }
1824 
1825 static void
vala_value_code_visitor_copy_value(const GValue * src_value,GValue * dest_value)1826 vala_value_code_visitor_copy_value (const GValue* src_value,
1827                                     GValue* dest_value)
1828 {
1829 	if (src_value->data[0].v_pointer) {
1830 		dest_value->data[0].v_pointer = vala_code_visitor_ref (src_value->data[0].v_pointer);
1831 	} else {
1832 		dest_value->data[0].v_pointer = NULL;
1833 	}
1834 }
1835 
1836 static gpointer
vala_value_code_visitor_peek_pointer(const GValue * value)1837 vala_value_code_visitor_peek_pointer (const GValue* value)
1838 {
1839 	return value->data[0].v_pointer;
1840 }
1841 
1842 static gchar*
vala_value_code_visitor_collect_value(GValue * value,guint n_collect_values,GTypeCValue * collect_values,guint collect_flags)1843 vala_value_code_visitor_collect_value (GValue* value,
1844                                        guint n_collect_values,
1845                                        GTypeCValue* collect_values,
1846                                        guint collect_flags)
1847 {
1848 	if (collect_values[0].v_pointer) {
1849 		ValaCodeVisitor * object;
1850 		object = collect_values[0].v_pointer;
1851 		if (object->parent_instance.g_class == NULL) {
1852 			return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
1853 		} else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) {
1854 			return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
1855 		}
1856 		value->data[0].v_pointer = vala_code_visitor_ref (object);
1857 	} else {
1858 		value->data[0].v_pointer = NULL;
1859 	}
1860 	return NULL;
1861 }
1862 
1863 static gchar*
vala_value_code_visitor_lcopy_value(const GValue * value,guint n_collect_values,GTypeCValue * collect_values,guint collect_flags)1864 vala_value_code_visitor_lcopy_value (const GValue* value,
1865                                      guint n_collect_values,
1866                                      GTypeCValue* collect_values,
1867                                      guint collect_flags)
1868 {
1869 	ValaCodeVisitor ** object_p;
1870 	object_p = collect_values[0].v_pointer;
1871 	if (!object_p) {
1872 		return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value));
1873 	}
1874 	if (!value->data[0].v_pointer) {
1875 		*object_p = NULL;
1876 	} else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) {
1877 		*object_p = value->data[0].v_pointer;
1878 	} else {
1879 		*object_p = vala_code_visitor_ref (value->data[0].v_pointer);
1880 	}
1881 	return NULL;
1882 }
1883 
1884 GParamSpec*
vala_param_spec_code_visitor(const gchar * name,const gchar * nick,const gchar * blurb,GType object_type,GParamFlags flags)1885 vala_param_spec_code_visitor (const gchar* name,
1886                               const gchar* nick,
1887                               const gchar* blurb,
1888                               GType object_type,
1889                               GParamFlags flags)
1890 {
1891 	ValaParamSpecCodeVisitor* spec;
1892 	g_return_val_if_fail (g_type_is_a (object_type, VALA_TYPE_CODE_VISITOR), NULL);
1893 	spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags);
1894 	G_PARAM_SPEC (spec)->value_type = object_type;
1895 	return G_PARAM_SPEC (spec);
1896 }
1897 
1898 gpointer
vala_value_get_code_visitor(const GValue * value)1899 vala_value_get_code_visitor (const GValue* value)
1900 {
1901 	g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, VALA_TYPE_CODE_VISITOR), NULL);
1902 	return value->data[0].v_pointer;
1903 }
1904 
1905 void
vala_value_set_code_visitor(GValue * value,gpointer v_object)1906 vala_value_set_code_visitor (GValue* value,
1907                              gpointer v_object)
1908 {
1909 	ValaCodeVisitor * old;
1910 	g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, VALA_TYPE_CODE_VISITOR));
1911 	old = value->data[0].v_pointer;
1912 	if (v_object) {
1913 		g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, VALA_TYPE_CODE_VISITOR));
1914 		g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
1915 		value->data[0].v_pointer = v_object;
1916 		vala_code_visitor_ref (value->data[0].v_pointer);
1917 	} else {
1918 		value->data[0].v_pointer = NULL;
1919 	}
1920 	if (old) {
1921 		vala_code_visitor_unref (old);
1922 	}
1923 }
1924 
1925 void
vala_value_take_code_visitor(GValue * value,gpointer v_object)1926 vala_value_take_code_visitor (GValue* value,
1927                               gpointer v_object)
1928 {
1929 	ValaCodeVisitor * old;
1930 	g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, VALA_TYPE_CODE_VISITOR));
1931 	old = value->data[0].v_pointer;
1932 	if (v_object) {
1933 		g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, VALA_TYPE_CODE_VISITOR));
1934 		g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
1935 		value->data[0].v_pointer = v_object;
1936 	} else {
1937 		value->data[0].v_pointer = NULL;
1938 	}
1939 	if (old) {
1940 		vala_code_visitor_unref (old);
1941 	}
1942 }
1943 
1944 static void
vala_code_visitor_class_init(ValaCodeVisitorClass * klass,gpointer klass_data)1945 vala_code_visitor_class_init (ValaCodeVisitorClass * klass,
1946                               gpointer klass_data)
1947 {
1948 	vala_code_visitor_parent_class = g_type_class_peek_parent (klass);
1949 	((ValaCodeVisitorClass *) klass)->finalize = vala_code_visitor_finalize;
1950 	((ValaCodeVisitorClass *) klass)->visit_source_file = (void (*) (ValaCodeVisitor*, ValaSourceFile*)) vala_code_visitor_real_visit_source_file;
1951 	((ValaCodeVisitorClass *) klass)->visit_namespace = (void (*) (ValaCodeVisitor*, ValaNamespace*)) vala_code_visitor_real_visit_namespace;
1952 	((ValaCodeVisitorClass *) klass)->visit_class = (void (*) (ValaCodeVisitor*, ValaClass*)) vala_code_visitor_real_visit_class;
1953 	((ValaCodeVisitorClass *) klass)->visit_struct = (void (*) (ValaCodeVisitor*, ValaStruct*)) vala_code_visitor_real_visit_struct;
1954 	((ValaCodeVisitorClass *) klass)->visit_interface = (void (*) (ValaCodeVisitor*, ValaInterface*)) vala_code_visitor_real_visit_interface;
1955 	((ValaCodeVisitorClass *) klass)->visit_enum = (void (*) (ValaCodeVisitor*, ValaEnum*)) vala_code_visitor_real_visit_enum;
1956 	((ValaCodeVisitorClass *) klass)->visit_enum_value = (void (*) (ValaCodeVisitor*, ValaEnumValue*)) vala_code_visitor_real_visit_enum_value;
1957 	((ValaCodeVisitorClass *) klass)->visit_error_domain = (void (*) (ValaCodeVisitor*, ValaErrorDomain*)) vala_code_visitor_real_visit_error_domain;
1958 	((ValaCodeVisitorClass *) klass)->visit_error_code = (void (*) (ValaCodeVisitor*, ValaErrorCode*)) vala_code_visitor_real_visit_error_code;
1959 	((ValaCodeVisitorClass *) klass)->visit_delegate = (void (*) (ValaCodeVisitor*, ValaDelegate*)) vala_code_visitor_real_visit_delegate;
1960 	((ValaCodeVisitorClass *) klass)->visit_constant = (void (*) (ValaCodeVisitor*, ValaConstant*)) vala_code_visitor_real_visit_constant;
1961 	((ValaCodeVisitorClass *) klass)->visit_field = (void (*) (ValaCodeVisitor*, ValaField*)) vala_code_visitor_real_visit_field;
1962 	((ValaCodeVisitorClass *) klass)->visit_method = (void (*) (ValaCodeVisitor*, ValaMethod*)) vala_code_visitor_real_visit_method;
1963 	((ValaCodeVisitorClass *) klass)->visit_creation_method = (void (*) (ValaCodeVisitor*, ValaCreationMethod*)) vala_code_visitor_real_visit_creation_method;
1964 	((ValaCodeVisitorClass *) klass)->visit_formal_parameter = (void (*) (ValaCodeVisitor*, ValaParameter*)) vala_code_visitor_real_visit_formal_parameter;
1965 	((ValaCodeVisitorClass *) klass)->visit_property = (void (*) (ValaCodeVisitor*, ValaProperty*)) vala_code_visitor_real_visit_property;
1966 	((ValaCodeVisitorClass *) klass)->visit_property_accessor = (void (*) (ValaCodeVisitor*, ValaPropertyAccessor*)) vala_code_visitor_real_visit_property_accessor;
1967 	((ValaCodeVisitorClass *) klass)->visit_signal = (void (*) (ValaCodeVisitor*, ValaSignal*)) vala_code_visitor_real_visit_signal;
1968 	((ValaCodeVisitorClass *) klass)->visit_constructor = (void (*) (ValaCodeVisitor*, ValaConstructor*)) vala_code_visitor_real_visit_constructor;
1969 	((ValaCodeVisitorClass *) klass)->visit_destructor = (void (*) (ValaCodeVisitor*, ValaDestructor*)) vala_code_visitor_real_visit_destructor;
1970 	((ValaCodeVisitorClass *) klass)->visit_type_parameter = (void (*) (ValaCodeVisitor*, ValaTypeParameter*)) vala_code_visitor_real_visit_type_parameter;
1971 	((ValaCodeVisitorClass *) klass)->visit_using_directive = (void (*) (ValaCodeVisitor*, ValaUsingDirective*)) vala_code_visitor_real_visit_using_directive;
1972 	((ValaCodeVisitorClass *) klass)->visit_data_type = (void (*) (ValaCodeVisitor*, ValaDataType*)) vala_code_visitor_real_visit_data_type;
1973 	((ValaCodeVisitorClass *) klass)->visit_block = (void (*) (ValaCodeVisitor*, ValaBlock*)) vala_code_visitor_real_visit_block;
1974 	((ValaCodeVisitorClass *) klass)->visit_empty_statement = (void (*) (ValaCodeVisitor*, ValaEmptyStatement*)) vala_code_visitor_real_visit_empty_statement;
1975 	((ValaCodeVisitorClass *) klass)->visit_declaration_statement = (void (*) (ValaCodeVisitor*, ValaDeclarationStatement*)) vala_code_visitor_real_visit_declaration_statement;
1976 	((ValaCodeVisitorClass *) klass)->visit_local_variable = (void (*) (ValaCodeVisitor*, ValaLocalVariable*)) vala_code_visitor_real_visit_local_variable;
1977 	((ValaCodeVisitorClass *) klass)->visit_initializer_list = (void (*) (ValaCodeVisitor*, ValaInitializerList*)) vala_code_visitor_real_visit_initializer_list;
1978 	((ValaCodeVisitorClass *) klass)->visit_expression_statement = (void (*) (ValaCodeVisitor*, ValaExpressionStatement*)) vala_code_visitor_real_visit_expression_statement;
1979 	((ValaCodeVisitorClass *) klass)->visit_if_statement = (void (*) (ValaCodeVisitor*, ValaIfStatement*)) vala_code_visitor_real_visit_if_statement;
1980 	((ValaCodeVisitorClass *) klass)->visit_switch_statement = (void (*) (ValaCodeVisitor*, ValaSwitchStatement*)) vala_code_visitor_real_visit_switch_statement;
1981 	((ValaCodeVisitorClass *) klass)->visit_switch_section = (void (*) (ValaCodeVisitor*, ValaSwitchSection*)) vala_code_visitor_real_visit_switch_section;
1982 	((ValaCodeVisitorClass *) klass)->visit_switch_label = (void (*) (ValaCodeVisitor*, ValaSwitchLabel*)) vala_code_visitor_real_visit_switch_label;
1983 	((ValaCodeVisitorClass *) klass)->visit_loop = (void (*) (ValaCodeVisitor*, ValaLoop*)) vala_code_visitor_real_visit_loop;
1984 	((ValaCodeVisitorClass *) klass)->visit_while_statement = (void (*) (ValaCodeVisitor*, ValaWhileStatement*)) vala_code_visitor_real_visit_while_statement;
1985 	((ValaCodeVisitorClass *) klass)->visit_do_statement = (void (*) (ValaCodeVisitor*, ValaDoStatement*)) vala_code_visitor_real_visit_do_statement;
1986 	((ValaCodeVisitorClass *) klass)->visit_for_statement = (void (*) (ValaCodeVisitor*, ValaForStatement*)) vala_code_visitor_real_visit_for_statement;
1987 	((ValaCodeVisitorClass *) klass)->visit_foreach_statement = (void (*) (ValaCodeVisitor*, ValaForeachStatement*)) vala_code_visitor_real_visit_foreach_statement;
1988 	((ValaCodeVisitorClass *) klass)->visit_break_statement = (void (*) (ValaCodeVisitor*, ValaBreakStatement*)) vala_code_visitor_real_visit_break_statement;
1989 	((ValaCodeVisitorClass *) klass)->visit_continue_statement = (void (*) (ValaCodeVisitor*, ValaContinueStatement*)) vala_code_visitor_real_visit_continue_statement;
1990 	((ValaCodeVisitorClass *) klass)->visit_return_statement = (void (*) (ValaCodeVisitor*, ValaReturnStatement*)) vala_code_visitor_real_visit_return_statement;
1991 	((ValaCodeVisitorClass *) klass)->visit_yield_statement = (void (*) (ValaCodeVisitor*, ValaYieldStatement*)) vala_code_visitor_real_visit_yield_statement;
1992 	((ValaCodeVisitorClass *) klass)->visit_throw_statement = (void (*) (ValaCodeVisitor*, ValaThrowStatement*)) vala_code_visitor_real_visit_throw_statement;
1993 	((ValaCodeVisitorClass *) klass)->visit_try_statement = (void (*) (ValaCodeVisitor*, ValaTryStatement*)) vala_code_visitor_real_visit_try_statement;
1994 	((ValaCodeVisitorClass *) klass)->visit_catch_clause = (void (*) (ValaCodeVisitor*, ValaCatchClause*)) vala_code_visitor_real_visit_catch_clause;
1995 	((ValaCodeVisitorClass *) klass)->visit_lock_statement = (void (*) (ValaCodeVisitor*, ValaLockStatement*)) vala_code_visitor_real_visit_lock_statement;
1996 	((ValaCodeVisitorClass *) klass)->visit_unlock_statement = (void (*) (ValaCodeVisitor*, ValaUnlockStatement*)) vala_code_visitor_real_visit_unlock_statement;
1997 	((ValaCodeVisitorClass *) klass)->visit_delete_statement = (void (*) (ValaCodeVisitor*, ValaDeleteStatement*)) vala_code_visitor_real_visit_delete_statement;
1998 	((ValaCodeVisitorClass *) klass)->visit_expression = (void (*) (ValaCodeVisitor*, ValaExpression*)) vala_code_visitor_real_visit_expression;
1999 	((ValaCodeVisitorClass *) klass)->visit_array_creation_expression = (void (*) (ValaCodeVisitor*, ValaArrayCreationExpression*)) vala_code_visitor_real_visit_array_creation_expression;
2000 	((ValaCodeVisitorClass *) klass)->visit_boolean_literal = (void (*) (ValaCodeVisitor*, ValaBooleanLiteral*)) vala_code_visitor_real_visit_boolean_literal;
2001 	((ValaCodeVisitorClass *) klass)->visit_character_literal = (void (*) (ValaCodeVisitor*, ValaCharacterLiteral*)) vala_code_visitor_real_visit_character_literal;
2002 	((ValaCodeVisitorClass *) klass)->visit_integer_literal = (void (*) (ValaCodeVisitor*, ValaIntegerLiteral*)) vala_code_visitor_real_visit_integer_literal;
2003 	((ValaCodeVisitorClass *) klass)->visit_real_literal = (void (*) (ValaCodeVisitor*, ValaRealLiteral*)) vala_code_visitor_real_visit_real_literal;
2004 	((ValaCodeVisitorClass *) klass)->visit_regex_literal = (void (*) (ValaCodeVisitor*, ValaRegexLiteral*)) vala_code_visitor_real_visit_regex_literal;
2005 	((ValaCodeVisitorClass *) klass)->visit_string_literal = (void (*) (ValaCodeVisitor*, ValaStringLiteral*)) vala_code_visitor_real_visit_string_literal;
2006 	((ValaCodeVisitorClass *) klass)->visit_template = (void (*) (ValaCodeVisitor*, ValaTemplate*)) vala_code_visitor_real_visit_template;
2007 	((ValaCodeVisitorClass *) klass)->visit_tuple = (void (*) (ValaCodeVisitor*, ValaTuple*)) vala_code_visitor_real_visit_tuple;
2008 	((ValaCodeVisitorClass *) klass)->visit_null_literal = (void (*) (ValaCodeVisitor*, ValaNullLiteral*)) vala_code_visitor_real_visit_null_literal;
2009 	((ValaCodeVisitorClass *) klass)->visit_member_access = (void (*) (ValaCodeVisitor*, ValaMemberAccess*)) vala_code_visitor_real_visit_member_access;
2010 	((ValaCodeVisitorClass *) klass)->visit_method_call = (void (*) (ValaCodeVisitor*, ValaMethodCall*)) vala_code_visitor_real_visit_method_call;
2011 	((ValaCodeVisitorClass *) klass)->visit_element_access = (void (*) (ValaCodeVisitor*, ValaElementAccess*)) vala_code_visitor_real_visit_element_access;
2012 	((ValaCodeVisitorClass *) klass)->visit_slice_expression = (void (*) (ValaCodeVisitor*, ValaSliceExpression*)) vala_code_visitor_real_visit_slice_expression;
2013 	((ValaCodeVisitorClass *) klass)->visit_base_access = (void (*) (ValaCodeVisitor*, ValaBaseAccess*)) vala_code_visitor_real_visit_base_access;
2014 	((ValaCodeVisitorClass *) klass)->visit_postfix_expression = (void (*) (ValaCodeVisitor*, ValaPostfixExpression*)) vala_code_visitor_real_visit_postfix_expression;
2015 	((ValaCodeVisitorClass *) klass)->visit_object_creation_expression = (void (*) (ValaCodeVisitor*, ValaObjectCreationExpression*)) vala_code_visitor_real_visit_object_creation_expression;
2016 	((ValaCodeVisitorClass *) klass)->visit_sizeof_expression = (void (*) (ValaCodeVisitor*, ValaSizeofExpression*)) vala_code_visitor_real_visit_sizeof_expression;
2017 	((ValaCodeVisitorClass *) klass)->visit_typeof_expression = (void (*) (ValaCodeVisitor*, ValaTypeofExpression*)) vala_code_visitor_real_visit_typeof_expression;
2018 	((ValaCodeVisitorClass *) klass)->visit_unary_expression = (void (*) (ValaCodeVisitor*, ValaUnaryExpression*)) vala_code_visitor_real_visit_unary_expression;
2019 	((ValaCodeVisitorClass *) klass)->visit_cast_expression = (void (*) (ValaCodeVisitor*, ValaCastExpression*)) vala_code_visitor_real_visit_cast_expression;
2020 	((ValaCodeVisitorClass *) klass)->visit_named_argument = (void (*) (ValaCodeVisitor*, ValaNamedArgument*)) vala_code_visitor_real_visit_named_argument;
2021 	((ValaCodeVisitorClass *) klass)->visit_pointer_indirection = (void (*) (ValaCodeVisitor*, ValaPointerIndirection*)) vala_code_visitor_real_visit_pointer_indirection;
2022 	((ValaCodeVisitorClass *) klass)->visit_addressof_expression = (void (*) (ValaCodeVisitor*, ValaAddressofExpression*)) vala_code_visitor_real_visit_addressof_expression;
2023 	((ValaCodeVisitorClass *) klass)->visit_reference_transfer_expression = (void (*) (ValaCodeVisitor*, ValaReferenceTransferExpression*)) vala_code_visitor_real_visit_reference_transfer_expression;
2024 	((ValaCodeVisitorClass *) klass)->visit_binary_expression = (void (*) (ValaCodeVisitor*, ValaBinaryExpression*)) vala_code_visitor_real_visit_binary_expression;
2025 	((ValaCodeVisitorClass *) klass)->visit_type_check = (void (*) (ValaCodeVisitor*, ValaTypeCheck*)) vala_code_visitor_real_visit_type_check;
2026 	((ValaCodeVisitorClass *) klass)->visit_conditional_expression = (void (*) (ValaCodeVisitor*, ValaConditionalExpression*)) vala_code_visitor_real_visit_conditional_expression;
2027 	((ValaCodeVisitorClass *) klass)->visit_lambda_expression = (void (*) (ValaCodeVisitor*, ValaLambdaExpression*)) vala_code_visitor_real_visit_lambda_expression;
2028 	((ValaCodeVisitorClass *) klass)->visit_assignment = (void (*) (ValaCodeVisitor*, ValaAssignment*)) vala_code_visitor_real_visit_assignment;
2029 	((ValaCodeVisitorClass *) klass)->visit_end_full_expression = (void (*) (ValaCodeVisitor*, ValaExpression*)) vala_code_visitor_real_visit_end_full_expression;
2030 }
2031 
2032 static void
vala_code_visitor_instance_init(ValaCodeVisitor * self,gpointer klass)2033 vala_code_visitor_instance_init (ValaCodeVisitor * self,
2034                                  gpointer klass)
2035 {
2036 	self->ref_count = 1;
2037 }
2038 
2039 static void
vala_code_visitor_finalize(ValaCodeVisitor * obj)2040 vala_code_visitor_finalize (ValaCodeVisitor * obj)
2041 {
2042 	ValaCodeVisitor * self;
2043 	self = G_TYPE_CHECK_INSTANCE_CAST (obj, VALA_TYPE_CODE_VISITOR, ValaCodeVisitor);
2044 	g_signal_handlers_destroy (self);
2045 }
2046 
2047 /**
2048  * Abstract code node visitor for traversing source code tree.
2049  */
2050 static GType
vala_code_visitor_get_type_once(void)2051 vala_code_visitor_get_type_once (void)
2052 {
2053 	static const GTypeValueTable g_define_type_value_table = { vala_value_code_visitor_init, vala_value_code_visitor_free_value, vala_value_code_visitor_copy_value, vala_value_code_visitor_peek_pointer, "p", vala_value_code_visitor_collect_value, "p", vala_value_code_visitor_lcopy_value };
2054 	static const GTypeInfo g_define_type_info = { sizeof (ValaCodeVisitorClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) vala_code_visitor_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ValaCodeVisitor), 0, (GInstanceInitFunc) vala_code_visitor_instance_init, &g_define_type_value_table };
2055 	static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) };
2056 	GType vala_code_visitor_type_id;
2057 	vala_code_visitor_type_id = g_type_register_fundamental (g_type_fundamental_next (), "ValaCodeVisitor", &g_define_type_info, &g_define_type_fundamental_info, G_TYPE_FLAG_ABSTRACT);
2058 	return vala_code_visitor_type_id;
2059 }
2060 
2061 GType
vala_code_visitor_get_type(void)2062 vala_code_visitor_get_type (void)
2063 {
2064 	static volatile gsize vala_code_visitor_type_id__volatile = 0;
2065 	if (g_once_init_enter (&vala_code_visitor_type_id__volatile)) {
2066 		GType vala_code_visitor_type_id;
2067 		vala_code_visitor_type_id = vala_code_visitor_get_type_once ();
2068 		g_once_init_leave (&vala_code_visitor_type_id__volatile, vala_code_visitor_type_id);
2069 	}
2070 	return vala_code_visitor_type_id__volatile;
2071 }
2072 
2073 gpointer
vala_code_visitor_ref(gpointer instance)2074 vala_code_visitor_ref (gpointer instance)
2075 {
2076 	ValaCodeVisitor * self;
2077 	self = instance;
2078 	g_atomic_int_inc (&self->ref_count);
2079 	return instance;
2080 }
2081 
2082 void
vala_code_visitor_unref(gpointer instance)2083 vala_code_visitor_unref (gpointer instance)
2084 {
2085 	ValaCodeVisitor * self;
2086 	self = instance;
2087 	if (g_atomic_int_dec_and_test (&self->ref_count)) {
2088 		VALA_CODE_VISITOR_GET_CLASS (self)->finalize (self);
2089 		g_type_free_instance ((GTypeInstance *) self);
2090 	}
2091 }
2092 
2093