1 /* valagdbusmodule.c generated by valac, the Vala compiler
2 * generated from valagdbusmodule.vala, do not modify */
3
4 /* valagdbusmodule.vala
5 *
6 * Copyright (C) 2010-2012 Jürg Billeter
7 *
8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Lesser General Public
10 * License as published by the Free Software Foundation; either
11 * version 2.1 of the License, or (at your option) any later version.
12
13 * This library is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * Lesser General Public License for more details.
17
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with this library; if not, write to the Free Software
20 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
21 *
22 * Author:
23 * Jürg Billeter <j@bitron.ch>
24 */
25
26 #include "valacodegen.h"
27 #include <vala.h>
28 #include <stdlib.h>
29 #include <string.h>
30 #include <glib.h>
31 #include <valaccode.h>
32 #include <valagee.h>
33 #include <glib-object.h>
34
35 #define _g_free0(var) (var = (g_free (var), NULL))
36 #define _vala_code_node_unref0(var) ((var == NULL) ? NULL : (var = (vala_code_node_unref (var), NULL)))
37 #define _vala_ccode_node_unref0(var) ((var == NULL) ? NULL : (var = (vala_ccode_node_unref (var), NULL)))
38 #define _vala_iterable_unref0(var) ((var == NULL) ? NULL : (var = (vala_iterable_unref (var), NULL)))
39
40 static gpointer vala_gd_bus_module_parent_class = NULL;
41
42 static void vala_gd_bus_module_real_visit_error_domain (ValaCodeVisitor* base,
43 ValaErrorDomain* edomain);
44 static gboolean vala_gd_bus_module_is_file_descriptor (ValaGDBusModule* self,
45 ValaDataType* type);
46 static ValaCCodeExpression* vala_gd_bus_module_get_file_descriptor (ValaGDBusModule* self,
47 ValaDataType* type,
48 ValaCCodeExpression* expr);
49 static ValaCCodeExpression* vala_gd_bus_module_create_from_file_descriptor (ValaGDBusModule* self,
50 ValaDataType* type,
51 ValaCCodeExpression* expr);
52 static ValaCCodeExpression* vala_gd_bus_module_get_method_info (ValaGDBusModule* self,
53 ValaObjectTypeSymbol* sym);
54 static ValaCCodeExpression* vala_gd_bus_module_get_signal_info (ValaGDBusModule* self,
55 ValaObjectTypeSymbol* sym);
56 static ValaCCodeExpression* vala_gd_bus_module_get_property_info (ValaGDBusModule* self,
57 ValaObjectTypeSymbol* sym);
58 static void vala_gd_bus_module_declare_interface_info (ValaGDBusModule* self,
59 ValaObjectTypeSymbol* sym);
60 static void vala_gd_bus_module_real_visit_class (ValaCodeVisitor* base,
61 ValaClass* cl);
62 static void vala_gd_bus_module_visit_object_type_symbol (ValaGDBusModule* self,
63 ValaObjectTypeSymbol* sym);
64 static void vala_gd_bus_module_real_visit_interface (ValaCodeVisitor* base,
65 ValaInterface* iface);
66 static GType vala_gd_bus_module_get_type_once (void);
67
68 gchar*
vala_gd_bus_module_get_dbus_name(ValaTypeSymbol * symbol)69 vala_gd_bus_module_get_dbus_name (ValaTypeSymbol* symbol)
70 {
71 gchar* _tmp0_;
72 gchar* result = NULL;
73 g_return_val_if_fail (symbol != NULL, NULL);
74 _tmp0_ = vala_code_node_get_attribute_string ((ValaCodeNode*) symbol, "DBus", "name", NULL);
75 result = _tmp0_;
76 return result;
77 }
78
79 gchar*
vala_gd_bus_module_get_dbus_name_for_member(ValaSymbol * symbol)80 vala_gd_bus_module_get_dbus_name_for_member (ValaSymbol* symbol)
81 {
82 gchar* dbus_name = NULL;
83 gchar* _tmp0_;
84 const gchar* _tmp1_;
85 const gchar* _tmp2_;
86 const gchar* _tmp3_;
87 gchar* _tmp4_;
88 gchar* result = NULL;
89 g_return_val_if_fail (symbol != NULL, NULL);
90 _tmp0_ = vala_code_node_get_attribute_string ((ValaCodeNode*) symbol, "DBus", "name", NULL);
91 dbus_name = _tmp0_;
92 _tmp1_ = dbus_name;
93 if (_tmp1_ != NULL) {
94 result = dbus_name;
95 return result;
96 }
97 _tmp2_ = vala_symbol_get_name (symbol);
98 _tmp3_ = _tmp2_;
99 _tmp4_ = vala_symbol_lower_case_to_camel_case (_tmp3_);
100 result = _tmp4_;
101 _g_free0 (dbus_name);
102 return result;
103 }
104
105 gint
vala_gd_bus_module_get_dbus_timeout_for_member(ValaSymbol * symbol)106 vala_gd_bus_module_get_dbus_timeout_for_member (ValaSymbol* symbol)
107 {
108 gint result = 0;
109 g_return_val_if_fail (symbol != NULL, 0);
110 result = vala_code_node_get_attribute_integer ((ValaCodeNode*) symbol, "DBus", "timeout", -1);
111 return result;
112 }
113
114 static gpointer
_vala_code_node_ref0(gpointer self)115 _vala_code_node_ref0 (gpointer self)
116 {
117 return self ? vala_code_node_ref (self) : NULL;
118 }
119
120 gboolean
vala_gd_bus_module_is_dbus_visible(ValaCodeNode * node)121 vala_gd_bus_module_is_dbus_visible (ValaCodeNode* node)
122 {
123 ValaAttribute* dbus_attribute = NULL;
124 ValaAttribute* _tmp0_;
125 ValaAttribute* _tmp1_;
126 gboolean _tmp2_ = FALSE;
127 gboolean _tmp3_ = FALSE;
128 ValaAttribute* _tmp4_;
129 gboolean result = FALSE;
130 g_return_val_if_fail (node != NULL, FALSE);
131 _tmp0_ = vala_code_node_get_attribute (node, "DBus");
132 _tmp1_ = _vala_code_node_ref0 (_tmp0_);
133 dbus_attribute = _tmp1_;
134 _tmp4_ = dbus_attribute;
135 if (_tmp4_ != NULL) {
136 ValaAttribute* _tmp5_;
137 _tmp5_ = dbus_attribute;
138 _tmp3_ = vala_attribute_has_argument (_tmp5_, "visible");
139 } else {
140 _tmp3_ = FALSE;
141 }
142 if (_tmp3_) {
143 ValaAttribute* _tmp6_;
144 _tmp6_ = dbus_attribute;
145 _tmp2_ = !vala_attribute_get_bool (_tmp6_, "visible", FALSE);
146 } else {
147 _tmp2_ = FALSE;
148 }
149 if (_tmp2_) {
150 result = FALSE;
151 _vala_code_node_unref0 (dbus_attribute);
152 return result;
153 }
154 result = TRUE;
155 _vala_code_node_unref0 (dbus_attribute);
156 return result;
157 }
158
159 gboolean
vala_gd_bus_module_is_dbus_no_reply(ValaMethod * m)160 vala_gd_bus_module_is_dbus_no_reply (ValaMethod* m)
161 {
162 gboolean result = FALSE;
163 g_return_val_if_fail (m != NULL, FALSE);
164 result = vala_code_node_get_attribute_bool ((ValaCodeNode*) m, "DBus", "no_reply", FALSE);
165 return result;
166 }
167
168 gchar*
vala_gd_bus_module_dbus_result_name(ValaMethod * m)169 vala_gd_bus_module_dbus_result_name (ValaMethod* m)
170 {
171 gchar* dbus_name = NULL;
172 gchar* _tmp0_;
173 gboolean _tmp1_ = FALSE;
174 const gchar* _tmp2_;
175 gchar* _tmp4_;
176 gchar* result = NULL;
177 g_return_val_if_fail (m != NULL, NULL);
178 _tmp0_ = vala_code_node_get_attribute_string ((ValaCodeNode*) m, "DBus", "result", NULL);
179 dbus_name = _tmp0_;
180 _tmp2_ = dbus_name;
181 if (_tmp2_ != NULL) {
182 const gchar* _tmp3_;
183 _tmp3_ = dbus_name;
184 _tmp1_ = g_strcmp0 (_tmp3_, "") != 0;
185 } else {
186 _tmp1_ = FALSE;
187 }
188 if (_tmp1_) {
189 result = dbus_name;
190 return result;
191 }
192 _tmp4_ = g_strdup ("result");
193 result = _tmp4_;
194 _g_free0 (dbus_name);
195 return result;
196 }
197
198 static gpointer
_vala_iterable_ref0(gpointer self)199 _vala_iterable_ref0 (gpointer self)
200 {
201 return self ? vala_iterable_ref (self) : NULL;
202 }
203
204 static void
vala_gd_bus_module_real_visit_error_domain(ValaCodeVisitor * base,ValaErrorDomain * edomain)205 vala_gd_bus_module_real_visit_error_domain (ValaCodeVisitor* base,
206 ValaErrorDomain* edomain)
207 {
208 ValaGDBusModule * self;
209 gchar* edomain_dbus_name = NULL;
210 gchar* _tmp0_;
211 const gchar* _tmp1_;
212 ValaCCodeFile* _tmp2_;
213 ValaCCodeFile* _tmp3_;
214 ValaCCodeInitializerList* error_entries = NULL;
215 ValaCCodeInitializerList* _tmp6_;
216 ValaCCodeDeclaration* _cdecl_ = NULL;
217 ValaCCodeDeclaration* _tmp41_;
218 ValaCCodeDeclaration* _tmp42_;
219 gchar* _tmp43_;
220 gchar* _tmp44_;
221 gchar* _tmp45_;
222 gchar* _tmp46_;
223 ValaCCodeInitializerList* _tmp47_;
224 ValaCCodeVariableDeclarator* _tmp48_;
225 ValaCCodeVariableDeclarator* _tmp49_;
226 ValaCCodeDeclaration* _tmp50_;
227 ValaCCodeFile* _tmp51_;
228 ValaCCodeDeclaration* _tmp52_;
229 gchar* quark_fun_name = NULL;
230 gchar* _tmp53_;
231 gchar* _tmp54_;
232 gchar* _tmp55_;
233 gchar* _tmp56_;
234 ValaCCodeFunction* cquark_fun = NULL;
235 const gchar* _tmp57_;
236 ValaDataType* _tmp58_;
237 ValaTypeSymbol* _tmp59_;
238 ValaTypeSymbol* _tmp60_;
239 gchar* _tmp61_;
240 gchar* _tmp62_;
241 ValaCCodeFunction* _tmp63_;
242 ValaCCodeFunction* _tmp64_;
243 ValaCCodeFunction* _tmp65_;
244 gchar* quark_name = NULL;
245 gchar* _tmp66_;
246 gchar* _tmp67_;
247 gchar* _tmp68_;
248 gchar* _tmp69_;
249 ValaCCodeFunction* _tmp70_;
250 ValaCCodeFunction* _tmp71_;
251 const gchar* _tmp72_;
252 ValaCCodeConstant* _tmp73_;
253 ValaCCodeConstant* _tmp74_;
254 ValaCCodeVariableDeclarator* _tmp75_;
255 ValaCCodeVariableDeclarator* _tmp76_;
256 ValaCCodeFunctionCall* register_call = NULL;
257 ValaCCodeIdentifier* _tmp77_;
258 ValaCCodeIdentifier* _tmp78_;
259 ValaCCodeFunctionCall* _tmp79_;
260 ValaCCodeFunctionCall* _tmp80_;
261 ValaCCodeFunctionCall* _tmp81_;
262 gchar* _tmp82_;
263 gchar* _tmp83_;
264 gchar* _tmp84_;
265 gchar* _tmp85_;
266 gchar* _tmp86_;
267 gchar* _tmp87_;
268 ValaCCodeConstant* _tmp88_;
269 ValaCCodeConstant* _tmp89_;
270 ValaCCodeFunctionCall* _tmp90_;
271 const gchar* _tmp91_;
272 ValaCCodeIdentifier* _tmp92_;
273 ValaCCodeIdentifier* _tmp93_;
274 ValaCCodeUnaryExpression* _tmp94_;
275 ValaCCodeUnaryExpression* _tmp95_;
276 ValaCCodeFunctionCall* _tmp96_;
277 gchar* _tmp97_;
278 gchar* _tmp98_;
279 gchar* _tmp99_;
280 gchar* _tmp100_;
281 ValaCCodeIdentifier* _tmp101_;
282 ValaCCodeIdentifier* _tmp102_;
283 ValaCCodeFunctionCall* nentries = NULL;
284 ValaCCodeIdentifier* _tmp103_;
285 ValaCCodeIdentifier* _tmp104_;
286 ValaCCodeFunctionCall* _tmp105_;
287 ValaCCodeFunctionCall* _tmp106_;
288 ValaCCodeFunctionCall* _tmp107_;
289 gchar* _tmp108_;
290 gchar* _tmp109_;
291 gchar* _tmp110_;
292 gchar* _tmp111_;
293 ValaCCodeIdentifier* _tmp112_;
294 ValaCCodeIdentifier* _tmp113_;
295 ValaCCodeFunctionCall* _tmp114_;
296 ValaCCodeFunctionCall* _tmp115_;
297 ValaCCodeFunction* _tmp116_;
298 ValaCCodeFunction* _tmp117_;
299 ValaCCodeFunctionCall* _tmp118_;
300 ValaCCodeFunction* _tmp119_;
301 ValaCCodeFunction* _tmp120_;
302 const gchar* _tmp121_;
303 ValaCCodeIdentifier* _tmp122_;
304 ValaCCodeIdentifier* _tmp123_;
305 ValaCCodeCastExpression* _tmp124_;
306 ValaCCodeCastExpression* _tmp125_;
307 ValaCCodeFile* _tmp126_;
308 ValaCCodeFunction* _tmp127_;
309 self = (ValaGDBusModule*) base;
310 g_return_if_fail (edomain != NULL);
311 _tmp0_ = vala_gd_bus_module_get_dbus_name ((ValaTypeSymbol*) edomain);
312 edomain_dbus_name = _tmp0_;
313 _tmp1_ = edomain_dbus_name;
314 if (_tmp1_ == NULL) {
315 VALA_CODE_VISITOR_CLASS (vala_gd_bus_module_parent_class)->visit_error_domain ((ValaCodeVisitor*) G_TYPE_CHECK_INSTANCE_CAST (self, VALA_TYPE_GVARIANT_MODULE, ValaGVariantModule), edomain);
316 _g_free0 (edomain_dbus_name);
317 return;
318 }
319 _tmp2_ = ((ValaCCodeBaseModule*) self)->cfile;
320 vala_ccode_file_add_include (_tmp2_, "gio/gio.h", FALSE);
321 _tmp3_ = ((ValaCCodeBaseModule*) self)->cfile;
322 vala_ccode_base_module_generate_error_domain_declaration ((ValaCCodeBaseModule*) self, edomain, _tmp3_);
323 if (!vala_symbol_is_internal_symbol ((ValaSymbol*) edomain)) {
324 ValaCCodeFile* _tmp4_;
325 _tmp4_ = ((ValaCCodeBaseModule*) self)->header_file;
326 vala_ccode_base_module_generate_error_domain_declaration ((ValaCCodeBaseModule*) self, edomain, _tmp4_);
327 }
328 if (!vala_symbol_is_private_symbol ((ValaSymbol*) edomain)) {
329 ValaCCodeFile* _tmp5_;
330 _tmp5_ = ((ValaCCodeBaseModule*) self)->internal_header_file;
331 vala_ccode_base_module_generate_error_domain_declaration ((ValaCCodeBaseModule*) self, edomain, _tmp5_);
332 }
333 _tmp6_ = vala_ccode_initializer_list_new ();
334 error_entries = _tmp6_;
335 {
336 ValaList* _ecode_list = NULL;
337 ValaList* _tmp7_;
338 ValaList* _tmp8_;
339 gint _ecode_size = 0;
340 ValaList* _tmp9_;
341 gint _tmp10_;
342 gint _tmp11_;
343 gint _ecode_index = 0;
344 _tmp7_ = vala_error_domain_get_codes (edomain);
345 _tmp8_ = _vala_iterable_ref0 (_tmp7_);
346 _ecode_list = _tmp8_;
347 _tmp9_ = _ecode_list;
348 _tmp10_ = vala_collection_get_size ((ValaCollection*) _tmp9_);
349 _tmp11_ = _tmp10_;
350 _ecode_size = _tmp11_;
351 _ecode_index = -1;
352 while (TRUE) {
353 gint _tmp12_;
354 gint _tmp13_;
355 ValaErrorCode* ecode = NULL;
356 ValaList* _tmp14_;
357 gpointer _tmp15_;
358 gchar* ecode_dbus_name = NULL;
359 ValaErrorCode* _tmp16_;
360 gchar* _tmp17_;
361 const gchar* _tmp18_;
362 ValaCCodeInitializerList* error_entry = NULL;
363 ValaCCodeInitializerList* _tmp25_;
364 ValaCCodeInitializerList* _tmp26_;
365 ValaErrorCode* _tmp27_;
366 gchar* _tmp28_;
367 gchar* _tmp29_;
368 ValaCCodeIdentifier* _tmp30_;
369 ValaCCodeIdentifier* _tmp31_;
370 ValaCCodeInitializerList* _tmp32_;
371 const gchar* _tmp33_;
372 const gchar* _tmp34_;
373 gchar* _tmp35_;
374 gchar* _tmp36_;
375 ValaCCodeConstant* _tmp37_;
376 ValaCCodeConstant* _tmp38_;
377 ValaCCodeInitializerList* _tmp39_;
378 ValaCCodeInitializerList* _tmp40_;
379 _ecode_index = _ecode_index + 1;
380 _tmp12_ = _ecode_index;
381 _tmp13_ = _ecode_size;
382 if (!(_tmp12_ < _tmp13_)) {
383 break;
384 }
385 _tmp14_ = _ecode_list;
386 _tmp15_ = vala_list_get (_tmp14_, _ecode_index);
387 ecode = (ValaErrorCode*) _tmp15_;
388 _tmp16_ = ecode;
389 _tmp17_ = vala_gd_bus_module_get_dbus_name ((ValaTypeSymbol*) _tmp16_);
390 ecode_dbus_name = _tmp17_;
391 _tmp18_ = ecode_dbus_name;
392 if (_tmp18_ == NULL) {
393 ValaErrorCode* _tmp19_;
394 const gchar* _tmp20_;
395 const gchar* _tmp21_;
396 gchar* _tmp22_;
397 gchar* _tmp23_;
398 gchar* _tmp24_;
399 _tmp19_ = ecode;
400 _tmp20_ = vala_symbol_get_name ((ValaSymbol*) _tmp19_);
401 _tmp21_ = _tmp20_;
402 _tmp22_ = g_ascii_strdown (_tmp21_, (gssize) -1);
403 _tmp23_ = _tmp22_;
404 _tmp24_ = vala_symbol_lower_case_to_camel_case (_tmp23_);
405 _g_free0 (ecode_dbus_name);
406 ecode_dbus_name = _tmp24_;
407 _g_free0 (_tmp23_);
408 }
409 _tmp25_ = vala_ccode_initializer_list_new ();
410 error_entry = _tmp25_;
411 _tmp26_ = error_entry;
412 _tmp27_ = ecode;
413 _tmp28_ = vala_get_ccode_name ((ValaCodeNode*) _tmp27_);
414 _tmp29_ = _tmp28_;
415 _tmp30_ = vala_ccode_identifier_new (_tmp29_);
416 _tmp31_ = _tmp30_;
417 vala_ccode_initializer_list_append (_tmp26_, (ValaCCodeExpression*) _tmp31_);
418 _vala_ccode_node_unref0 (_tmp31_);
419 _g_free0 (_tmp29_);
420 _tmp32_ = error_entry;
421 _tmp33_ = edomain_dbus_name;
422 _tmp34_ = ecode_dbus_name;
423 _tmp35_ = g_strdup_printf ("\"%s.%s\"", _tmp33_, _tmp34_);
424 _tmp36_ = _tmp35_;
425 _tmp37_ = vala_ccode_constant_new (_tmp36_);
426 _tmp38_ = _tmp37_;
427 vala_ccode_initializer_list_append (_tmp32_, (ValaCCodeExpression*) _tmp38_);
428 _vala_ccode_node_unref0 (_tmp38_);
429 _g_free0 (_tmp36_);
430 _tmp39_ = error_entries;
431 _tmp40_ = error_entry;
432 vala_ccode_initializer_list_append (_tmp39_, (ValaCCodeExpression*) _tmp40_);
433 _vala_ccode_node_unref0 (error_entry);
434 _g_free0 (ecode_dbus_name);
435 _vala_code_node_unref0 (ecode);
436 }
437 _vala_iterable_unref0 (_ecode_list);
438 }
439 _tmp41_ = vala_ccode_declaration_new ("const GDBusErrorEntry");
440 _cdecl_ = _tmp41_;
441 _tmp42_ = _cdecl_;
442 _tmp43_ = vala_get_ccode_lower_case_name ((ValaCodeNode*) edomain, NULL);
443 _tmp44_ = _tmp43_;
444 _tmp45_ = g_strconcat (_tmp44_, "_entries[]", NULL);
445 _tmp46_ = _tmp45_;
446 _tmp47_ = error_entries;
447 _tmp48_ = vala_ccode_variable_declarator_new (_tmp46_, (ValaCCodeExpression*) _tmp47_, NULL);
448 _tmp49_ = _tmp48_;
449 vala_ccode_declaration_add_declarator (_tmp42_, (ValaCCodeDeclarator*) _tmp49_);
450 _vala_ccode_node_unref0 (_tmp49_);
451 _g_free0 (_tmp46_);
452 _g_free0 (_tmp44_);
453 _tmp50_ = _cdecl_;
454 vala_ccode_node_set_modifiers ((ValaCCodeNode*) _tmp50_, VALA_CCODE_MODIFIERS_STATIC);
455 _tmp51_ = ((ValaCCodeBaseModule*) self)->cfile;
456 _tmp52_ = _cdecl_;
457 vala_ccode_file_add_constant_declaration (_tmp51_, (ValaCCodeNode*) _tmp52_);
458 _tmp53_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) edomain);
459 _tmp54_ = _tmp53_;
460 _tmp55_ = g_strconcat (_tmp54_, "quark", NULL);
461 _tmp56_ = _tmp55_;
462 _g_free0 (_tmp54_);
463 quark_fun_name = _tmp56_;
464 _tmp57_ = quark_fun_name;
465 _tmp58_ = ((ValaCCodeBaseModule*) self)->gquark_type;
466 _tmp59_ = vala_data_type_get_type_symbol (_tmp58_);
467 _tmp60_ = _tmp59_;
468 _tmp61_ = vala_get_ccode_name ((ValaCodeNode*) _tmp60_);
469 _tmp62_ = _tmp61_;
470 _tmp63_ = vala_ccode_function_new (_tmp57_, _tmp62_);
471 _tmp64_ = _tmp63_;
472 _g_free0 (_tmp62_);
473 cquark_fun = _tmp64_;
474 _tmp65_ = cquark_fun;
475 vala_ccode_base_module_push_function ((ValaCCodeBaseModule*) self, _tmp65_);
476 _tmp66_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) edomain);
477 _tmp67_ = _tmp66_;
478 _tmp68_ = g_strdup_printf ("%squark_volatile", _tmp67_);
479 _tmp69_ = _tmp68_;
480 _g_free0 (_tmp67_);
481 quark_name = _tmp69_;
482 _tmp70_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
483 _tmp71_ = _tmp70_;
484 _tmp72_ = quark_name;
485 _tmp73_ = vala_ccode_constant_new ("0");
486 _tmp74_ = _tmp73_;
487 _tmp75_ = vala_ccode_variable_declarator_new (_tmp72_, (ValaCCodeExpression*) _tmp74_, NULL);
488 _tmp76_ = _tmp75_;
489 vala_ccode_function_add_declaration (_tmp71_, "gsize", (ValaCCodeDeclarator*) _tmp76_, VALA_CCODE_MODIFIERS_STATIC | VALA_CCODE_MODIFIERS_VOLATILE);
490 _vala_ccode_node_unref0 (_tmp76_);
491 _vala_ccode_node_unref0 (_tmp74_);
492 _tmp77_ = vala_ccode_identifier_new ("g_dbus_error_register_error_domain");
493 _tmp78_ = _tmp77_;
494 _tmp79_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp78_);
495 _tmp80_ = _tmp79_;
496 _vala_ccode_node_unref0 (_tmp78_);
497 register_call = _tmp80_;
498 _tmp81_ = register_call;
499 _tmp82_ = vala_get_ccode_quark_name (edomain);
500 _tmp83_ = _tmp82_;
501 _tmp84_ = g_strconcat ("\"", _tmp83_, NULL);
502 _tmp85_ = _tmp84_;
503 _tmp86_ = g_strconcat (_tmp85_, "\"", NULL);
504 _tmp87_ = _tmp86_;
505 _tmp88_ = vala_ccode_constant_new (_tmp87_);
506 _tmp89_ = _tmp88_;
507 vala_ccode_function_call_add_argument (_tmp81_, (ValaCCodeExpression*) _tmp89_);
508 _vala_ccode_node_unref0 (_tmp89_);
509 _g_free0 (_tmp87_);
510 _g_free0 (_tmp85_);
511 _g_free0 (_tmp83_);
512 _tmp90_ = register_call;
513 _tmp91_ = quark_name;
514 _tmp92_ = vala_ccode_identifier_new (_tmp91_);
515 _tmp93_ = _tmp92_;
516 _tmp94_ = vala_ccode_unary_expression_new (VALA_CCODE_UNARY_OPERATOR_ADDRESS_OF, (ValaCCodeExpression*) _tmp93_);
517 _tmp95_ = _tmp94_;
518 vala_ccode_function_call_add_argument (_tmp90_, (ValaCCodeExpression*) _tmp95_);
519 _vala_ccode_node_unref0 (_tmp95_);
520 _vala_ccode_node_unref0 (_tmp93_);
521 _tmp96_ = register_call;
522 _tmp97_ = vala_get_ccode_lower_case_name ((ValaCodeNode*) edomain, NULL);
523 _tmp98_ = _tmp97_;
524 _tmp99_ = g_strconcat (_tmp98_, "_entries", NULL);
525 _tmp100_ = _tmp99_;
526 _tmp101_ = vala_ccode_identifier_new (_tmp100_);
527 _tmp102_ = _tmp101_;
528 vala_ccode_function_call_add_argument (_tmp96_, (ValaCCodeExpression*) _tmp102_);
529 _vala_ccode_node_unref0 (_tmp102_);
530 _g_free0 (_tmp100_);
531 _g_free0 (_tmp98_);
532 _tmp103_ = vala_ccode_identifier_new ("G_N_ELEMENTS");
533 _tmp104_ = _tmp103_;
534 _tmp105_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp104_);
535 _tmp106_ = _tmp105_;
536 _vala_ccode_node_unref0 (_tmp104_);
537 nentries = _tmp106_;
538 _tmp107_ = nentries;
539 _tmp108_ = vala_get_ccode_lower_case_name ((ValaCodeNode*) edomain, NULL);
540 _tmp109_ = _tmp108_;
541 _tmp110_ = g_strconcat (_tmp109_, "_entries", NULL);
542 _tmp111_ = _tmp110_;
543 _tmp112_ = vala_ccode_identifier_new (_tmp111_);
544 _tmp113_ = _tmp112_;
545 vala_ccode_function_call_add_argument (_tmp107_, (ValaCCodeExpression*) _tmp113_);
546 _vala_ccode_node_unref0 (_tmp113_);
547 _g_free0 (_tmp111_);
548 _g_free0 (_tmp109_);
549 _tmp114_ = register_call;
550 _tmp115_ = nentries;
551 vala_ccode_function_call_add_argument (_tmp114_, (ValaCCodeExpression*) _tmp115_);
552 _tmp116_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
553 _tmp117_ = _tmp116_;
554 _tmp118_ = register_call;
555 vala_ccode_function_add_expression (_tmp117_, (ValaCCodeExpression*) _tmp118_);
556 _tmp119_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
557 _tmp120_ = _tmp119_;
558 _tmp121_ = quark_name;
559 _tmp122_ = vala_ccode_identifier_new (_tmp121_);
560 _tmp123_ = _tmp122_;
561 _tmp124_ = vala_ccode_cast_expression_new ((ValaCCodeExpression*) _tmp123_, "GQuark");
562 _tmp125_ = _tmp124_;
563 vala_ccode_function_add_return (_tmp120_, (ValaCCodeExpression*) _tmp125_);
564 _vala_ccode_node_unref0 (_tmp125_);
565 _vala_ccode_node_unref0 (_tmp123_);
566 vala_ccode_base_module_pop_function ((ValaCCodeBaseModule*) self);
567 _tmp126_ = ((ValaCCodeBaseModule*) self)->cfile;
568 _tmp127_ = cquark_fun;
569 vala_ccode_file_add_function (_tmp126_, _tmp127_);
570 _vala_ccode_node_unref0 (nentries);
571 _vala_ccode_node_unref0 (register_call);
572 _g_free0 (quark_name);
573 _vala_ccode_node_unref0 (cquark_fun);
574 _g_free0 (quark_fun_name);
575 _vala_ccode_node_unref0 (_cdecl_);
576 _vala_ccode_node_unref0 (error_entries);
577 _g_free0 (edomain_dbus_name);
578 }
579
580 static gboolean
vala_gd_bus_module_is_file_descriptor(ValaGDBusModule * self,ValaDataType * type)581 vala_gd_bus_module_is_file_descriptor (ValaGDBusModule* self,
582 ValaDataType* type)
583 {
584 gboolean result = FALSE;
585 g_return_val_if_fail (self != NULL, FALSE);
586 g_return_val_if_fail (type != NULL, FALSE);
587 if (G_TYPE_CHECK_INSTANCE_TYPE (type, VALA_TYPE_OBJECT_TYPE)) {
588 gboolean _tmp0_ = FALSE;
589 gboolean _tmp1_ = FALSE;
590 gboolean _tmp2_ = FALSE;
591 ValaTypeSymbol* _tmp3_;
592 ValaTypeSymbol* _tmp4_;
593 gchar* _tmp5_;
594 gchar* _tmp6_;
595 gboolean _tmp7_;
596 _tmp3_ = vala_data_type_get_type_symbol (type);
597 _tmp4_ = _tmp3_;
598 _tmp5_ = vala_symbol_get_full_name ((ValaSymbol*) _tmp4_);
599 _tmp6_ = _tmp5_;
600 _tmp7_ = g_strcmp0 (_tmp6_, "GLib.UnixInputStream") == 0;
601 _g_free0 (_tmp6_);
602 if (_tmp7_) {
603 _tmp2_ = TRUE;
604 } else {
605 ValaTypeSymbol* _tmp8_;
606 ValaTypeSymbol* _tmp9_;
607 gchar* _tmp10_;
608 gchar* _tmp11_;
609 _tmp8_ = vala_data_type_get_type_symbol (type);
610 _tmp9_ = _tmp8_;
611 _tmp10_ = vala_symbol_get_full_name ((ValaSymbol*) _tmp9_);
612 _tmp11_ = _tmp10_;
613 _tmp2_ = g_strcmp0 (_tmp11_, "GLib.UnixOutputStream") == 0;
614 _g_free0 (_tmp11_);
615 }
616 if (_tmp2_) {
617 _tmp1_ = TRUE;
618 } else {
619 ValaTypeSymbol* _tmp12_;
620 ValaTypeSymbol* _tmp13_;
621 gchar* _tmp14_;
622 gchar* _tmp15_;
623 _tmp12_ = vala_data_type_get_type_symbol (type);
624 _tmp13_ = _tmp12_;
625 _tmp14_ = vala_symbol_get_full_name ((ValaSymbol*) _tmp13_);
626 _tmp15_ = _tmp14_;
627 _tmp1_ = g_strcmp0 (_tmp15_, "GLib.Socket") == 0;
628 _g_free0 (_tmp15_);
629 }
630 if (_tmp1_) {
631 _tmp0_ = TRUE;
632 } else {
633 ValaTypeSymbol* _tmp16_;
634 ValaTypeSymbol* _tmp17_;
635 gchar* _tmp18_;
636 gchar* _tmp19_;
637 _tmp16_ = vala_data_type_get_type_symbol (type);
638 _tmp17_ = _tmp16_;
639 _tmp18_ = vala_symbol_get_full_name ((ValaSymbol*) _tmp17_);
640 _tmp19_ = _tmp18_;
641 _tmp0_ = g_strcmp0 (_tmp19_, "GLib.FileDescriptorBased") == 0;
642 _g_free0 (_tmp19_);
643 }
644 if (_tmp0_) {
645 result = TRUE;
646 return result;
647 }
648 }
649 result = FALSE;
650 return result;
651 }
652
653 gboolean
vala_gd_bus_module_dbus_method_uses_file_descriptor(ValaGDBusModule * self,ValaMethod * method)654 vala_gd_bus_module_dbus_method_uses_file_descriptor (ValaGDBusModule* self,
655 ValaMethod* method)
656 {
657 ValaDataType* _tmp12_;
658 ValaDataType* _tmp13_;
659 gboolean result = FALSE;
660 g_return_val_if_fail (self != NULL, FALSE);
661 g_return_val_if_fail (method != NULL, FALSE);
662 {
663 ValaList* _param_list = NULL;
664 ValaList* _tmp0_;
665 ValaList* _tmp1_;
666 gint _param_size = 0;
667 ValaList* _tmp2_;
668 gint _tmp3_;
669 gint _tmp4_;
670 gint _param_index = 0;
671 _tmp0_ = vala_callable_get_parameters ((ValaCallable*) method);
672 _tmp1_ = _vala_iterable_ref0 (_tmp0_);
673 _param_list = _tmp1_;
674 _tmp2_ = _param_list;
675 _tmp3_ = vala_collection_get_size ((ValaCollection*) _tmp2_);
676 _tmp4_ = _tmp3_;
677 _param_size = _tmp4_;
678 _param_index = -1;
679 while (TRUE) {
680 gint _tmp5_;
681 gint _tmp6_;
682 ValaParameter* param = NULL;
683 ValaList* _tmp7_;
684 gpointer _tmp8_;
685 ValaParameter* _tmp9_;
686 ValaDataType* _tmp10_;
687 ValaDataType* _tmp11_;
688 _param_index = _param_index + 1;
689 _tmp5_ = _param_index;
690 _tmp6_ = _param_size;
691 if (!(_tmp5_ < _tmp6_)) {
692 break;
693 }
694 _tmp7_ = _param_list;
695 _tmp8_ = vala_list_get (_tmp7_, _param_index);
696 param = (ValaParameter*) _tmp8_;
697 _tmp9_ = param;
698 _tmp10_ = vala_variable_get_variable_type ((ValaVariable*) _tmp9_);
699 _tmp11_ = _tmp10_;
700 if (vala_gd_bus_module_is_file_descriptor (self, _tmp11_)) {
701 result = TRUE;
702 _vala_code_node_unref0 (param);
703 _vala_iterable_unref0 (_param_list);
704 return result;
705 }
706 _vala_code_node_unref0 (param);
707 }
708 _vala_iterable_unref0 (_param_list);
709 }
710 _tmp12_ = vala_callable_get_return_type ((ValaCallable*) method);
711 _tmp13_ = _tmp12_;
712 if (vala_gd_bus_module_is_file_descriptor (self, _tmp13_)) {
713 result = TRUE;
714 return result;
715 }
716 result = FALSE;
717 return result;
718 }
719
720 static ValaCCodeExpression*
vala_gd_bus_module_get_file_descriptor(ValaGDBusModule * self,ValaDataType * type,ValaCCodeExpression * expr)721 vala_gd_bus_module_get_file_descriptor (ValaGDBusModule* self,
722 ValaDataType* type,
723 ValaCCodeExpression* expr)
724 {
725 ValaCCodeExpression* result = NULL;
726 g_return_val_if_fail (self != NULL, NULL);
727 g_return_val_if_fail (type != NULL, NULL);
728 g_return_val_if_fail (expr != NULL, NULL);
729 if (G_TYPE_CHECK_INSTANCE_TYPE (type, VALA_TYPE_OBJECT_TYPE)) {
730 ValaTypeSymbol* _tmp0_;
731 ValaTypeSymbol* _tmp1_;
732 gchar* _tmp2_;
733 gchar* _tmp3_;
734 gboolean _tmp4_;
735 _tmp0_ = vala_data_type_get_type_symbol (type);
736 _tmp1_ = _tmp0_;
737 _tmp2_ = vala_symbol_get_full_name ((ValaSymbol*) _tmp1_);
738 _tmp3_ = _tmp2_;
739 _tmp4_ = g_strcmp0 (_tmp3_, "GLib.UnixInputStream") == 0;
740 _g_free0 (_tmp3_);
741 if (_tmp4_) {
742 ValaCCodeFunctionCall* _result_ = NULL;
743 ValaCCodeIdentifier* _tmp5_;
744 ValaCCodeIdentifier* _tmp6_;
745 ValaCCodeFunctionCall* _tmp7_;
746 ValaCCodeFunctionCall* _tmp8_;
747 ValaCCodeFunctionCall* _tmp9_;
748 _tmp5_ = vala_ccode_identifier_new ("g_unix_input_stream_get_fd");
749 _tmp6_ = _tmp5_;
750 _tmp7_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp6_);
751 _tmp8_ = _tmp7_;
752 _vala_ccode_node_unref0 (_tmp6_);
753 _result_ = _tmp8_;
754 _tmp9_ = _result_;
755 vala_ccode_function_call_add_argument (_tmp9_, expr);
756 result = (ValaCCodeExpression*) _result_;
757 return result;
758 } else {
759 ValaTypeSymbol* _tmp10_;
760 ValaTypeSymbol* _tmp11_;
761 gchar* _tmp12_;
762 gchar* _tmp13_;
763 gboolean _tmp14_;
764 _tmp10_ = vala_data_type_get_type_symbol (type);
765 _tmp11_ = _tmp10_;
766 _tmp12_ = vala_symbol_get_full_name ((ValaSymbol*) _tmp11_);
767 _tmp13_ = _tmp12_;
768 _tmp14_ = g_strcmp0 (_tmp13_, "GLib.UnixOutputStream") == 0;
769 _g_free0 (_tmp13_);
770 if (_tmp14_) {
771 ValaCCodeFunctionCall* _result_ = NULL;
772 ValaCCodeIdentifier* _tmp15_;
773 ValaCCodeIdentifier* _tmp16_;
774 ValaCCodeFunctionCall* _tmp17_;
775 ValaCCodeFunctionCall* _tmp18_;
776 ValaCCodeFunctionCall* _tmp19_;
777 _tmp15_ = vala_ccode_identifier_new ("g_unix_output_stream_get_fd");
778 _tmp16_ = _tmp15_;
779 _tmp17_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp16_);
780 _tmp18_ = _tmp17_;
781 _vala_ccode_node_unref0 (_tmp16_);
782 _result_ = _tmp18_;
783 _tmp19_ = _result_;
784 vala_ccode_function_call_add_argument (_tmp19_, expr);
785 result = (ValaCCodeExpression*) _result_;
786 return result;
787 } else {
788 ValaTypeSymbol* _tmp20_;
789 ValaTypeSymbol* _tmp21_;
790 gchar* _tmp22_;
791 gchar* _tmp23_;
792 gboolean _tmp24_;
793 _tmp20_ = vala_data_type_get_type_symbol (type);
794 _tmp21_ = _tmp20_;
795 _tmp22_ = vala_symbol_get_full_name ((ValaSymbol*) _tmp21_);
796 _tmp23_ = _tmp22_;
797 _tmp24_ = g_strcmp0 (_tmp23_, "GLib.Socket") == 0;
798 _g_free0 (_tmp23_);
799 if (_tmp24_) {
800 ValaCCodeFunctionCall* _result_ = NULL;
801 ValaCCodeIdentifier* _tmp25_;
802 ValaCCodeIdentifier* _tmp26_;
803 ValaCCodeFunctionCall* _tmp27_;
804 ValaCCodeFunctionCall* _tmp28_;
805 ValaCCodeFunctionCall* _tmp29_;
806 _tmp25_ = vala_ccode_identifier_new ("g_socket_get_fd");
807 _tmp26_ = _tmp25_;
808 _tmp27_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp26_);
809 _tmp28_ = _tmp27_;
810 _vala_ccode_node_unref0 (_tmp26_);
811 _result_ = _tmp28_;
812 _tmp29_ = _result_;
813 vala_ccode_function_call_add_argument (_tmp29_, expr);
814 result = (ValaCCodeExpression*) _result_;
815 return result;
816 } else {
817 ValaTypeSymbol* _tmp30_;
818 ValaTypeSymbol* _tmp31_;
819 gchar* _tmp32_;
820 gchar* _tmp33_;
821 gboolean _tmp34_;
822 _tmp30_ = vala_data_type_get_type_symbol (type);
823 _tmp31_ = _tmp30_;
824 _tmp32_ = vala_symbol_get_full_name ((ValaSymbol*) _tmp31_);
825 _tmp33_ = _tmp32_;
826 _tmp34_ = g_strcmp0 (_tmp33_, "GLib.FileDescriptorBased") == 0;
827 _g_free0 (_tmp33_);
828 if (_tmp34_) {
829 ValaCCodeFunctionCall* _result_ = NULL;
830 ValaCCodeIdentifier* _tmp35_;
831 ValaCCodeIdentifier* _tmp36_;
832 ValaCCodeFunctionCall* _tmp37_;
833 ValaCCodeFunctionCall* _tmp38_;
834 ValaCCodeFunctionCall* _tmp39_;
835 _tmp35_ = vala_ccode_identifier_new ("g_file_descriptor_based_get_fd");
836 _tmp36_ = _tmp35_;
837 _tmp37_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp36_);
838 _tmp38_ = _tmp37_;
839 _vala_ccode_node_unref0 (_tmp36_);
840 _result_ = _tmp38_;
841 _tmp39_ = _result_;
842 vala_ccode_function_call_add_argument (_tmp39_, expr);
843 result = (ValaCCodeExpression*) _result_;
844 return result;
845 }
846 }
847 }
848 }
849 }
850 result = NULL;
851 return result;
852 }
853
854 void
vala_gd_bus_module_send_dbus_value(ValaGDBusModule * self,ValaDataType * type,ValaCCodeExpression * builder_expr,ValaCCodeExpression * expr,ValaSymbol * sym)855 vala_gd_bus_module_send_dbus_value (ValaGDBusModule* self,
856 ValaDataType* type,
857 ValaCCodeExpression* builder_expr,
858 ValaCCodeExpression* expr,
859 ValaSymbol* sym)
860 {
861 ValaCCodeExpression* fd = NULL;
862 ValaCCodeExpression* _tmp0_;
863 ValaCCodeExpression* _tmp1_;
864 g_return_if_fail (self != NULL);
865 g_return_if_fail (type != NULL);
866 g_return_if_fail (builder_expr != NULL);
867 g_return_if_fail (expr != NULL);
868 _tmp0_ = vala_gd_bus_module_get_file_descriptor (self, type, expr);
869 fd = _tmp0_;
870 _tmp1_ = fd;
871 if (_tmp1_ != NULL) {
872 ValaCCodeFunctionCall* fd_append = NULL;
873 ValaCCodeIdentifier* _tmp2_;
874 ValaCCodeIdentifier* _tmp3_;
875 ValaCCodeFunctionCall* _tmp4_;
876 ValaCCodeFunctionCall* _tmp5_;
877 ValaCCodeFunctionCall* _tmp6_;
878 ValaCCodeIdentifier* _tmp7_;
879 ValaCCodeIdentifier* _tmp8_;
880 ValaCCodeFunctionCall* _tmp9_;
881 ValaCCodeExpression* _tmp10_;
882 ValaCCodeFunctionCall* _tmp11_;
883 ValaCCodeConstant* _tmp12_;
884 ValaCCodeConstant* _tmp13_;
885 ValaCCodeFunctionCall* builder_add = NULL;
886 ValaCCodeIdentifier* _tmp14_;
887 ValaCCodeIdentifier* _tmp15_;
888 ValaCCodeFunctionCall* _tmp16_;
889 ValaCCodeFunctionCall* _tmp17_;
890 ValaCCodeFunctionCall* _tmp18_;
891 ValaCCodeUnaryExpression* _tmp19_;
892 ValaCCodeUnaryExpression* _tmp20_;
893 ValaCCodeFunctionCall* _tmp21_;
894 ValaCCodeConstant* _tmp22_;
895 ValaCCodeConstant* _tmp23_;
896 ValaCCodeFunctionCall* _tmp24_;
897 ValaCCodeFunctionCall* _tmp25_;
898 ValaCCodeFunction* _tmp26_;
899 ValaCCodeFunction* _tmp27_;
900 ValaCCodeFunctionCall* _tmp28_;
901 _tmp2_ = vala_ccode_identifier_new ("g_unix_fd_list_append");
902 _tmp3_ = _tmp2_;
903 _tmp4_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp3_);
904 _tmp5_ = _tmp4_;
905 _vala_ccode_node_unref0 (_tmp3_);
906 fd_append = _tmp5_;
907 _tmp6_ = fd_append;
908 _tmp7_ = vala_ccode_identifier_new ("_fd_list");
909 _tmp8_ = _tmp7_;
910 vala_ccode_function_call_add_argument (_tmp6_, (ValaCCodeExpression*) _tmp8_);
911 _vala_ccode_node_unref0 (_tmp8_);
912 _tmp9_ = fd_append;
913 _tmp10_ = fd;
914 vala_ccode_function_call_add_argument (_tmp9_, _tmp10_);
915 _tmp11_ = fd_append;
916 _tmp12_ = vala_ccode_constant_new ("NULL");
917 _tmp13_ = _tmp12_;
918 vala_ccode_function_call_add_argument (_tmp11_, (ValaCCodeExpression*) _tmp13_);
919 _vala_ccode_node_unref0 (_tmp13_);
920 _tmp14_ = vala_ccode_identifier_new ("g_variant_builder_add");
921 _tmp15_ = _tmp14_;
922 _tmp16_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp15_);
923 _tmp17_ = _tmp16_;
924 _vala_ccode_node_unref0 (_tmp15_);
925 builder_add = _tmp17_;
926 _tmp18_ = builder_add;
927 _tmp19_ = vala_ccode_unary_expression_new (VALA_CCODE_UNARY_OPERATOR_ADDRESS_OF, builder_expr);
928 _tmp20_ = _tmp19_;
929 vala_ccode_function_call_add_argument (_tmp18_, (ValaCCodeExpression*) _tmp20_);
930 _vala_ccode_node_unref0 (_tmp20_);
931 _tmp21_ = builder_add;
932 _tmp22_ = vala_ccode_constant_new ("\"h\"");
933 _tmp23_ = _tmp22_;
934 vala_ccode_function_call_add_argument (_tmp21_, (ValaCCodeExpression*) _tmp23_);
935 _vala_ccode_node_unref0 (_tmp23_);
936 _tmp24_ = builder_add;
937 _tmp25_ = fd_append;
938 vala_ccode_function_call_add_argument (_tmp24_, (ValaCCodeExpression*) _tmp25_);
939 _tmp26_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
940 _tmp27_ = _tmp26_;
941 _tmp28_ = builder_add;
942 vala_ccode_function_add_expression (_tmp27_, (ValaCCodeExpression*) _tmp28_);
943 _vala_ccode_node_unref0 (builder_add);
944 _vala_ccode_node_unref0 (fd_append);
945 } else {
946 vala_gvariant_module_write_expression ((ValaGVariantModule*) self, type, builder_expr, expr, sym);
947 }
948 _vala_ccode_node_unref0 (fd);
949 }
950
951 static ValaCCodeExpression*
vala_gd_bus_module_create_from_file_descriptor(ValaGDBusModule * self,ValaDataType * type,ValaCCodeExpression * expr)952 vala_gd_bus_module_create_from_file_descriptor (ValaGDBusModule* self,
953 ValaDataType* type,
954 ValaCCodeExpression* expr)
955 {
956 ValaCCodeExpression* result = NULL;
957 g_return_val_if_fail (self != NULL, NULL);
958 g_return_val_if_fail (type != NULL, NULL);
959 g_return_val_if_fail (expr != NULL, NULL);
960 if (G_TYPE_CHECK_INSTANCE_TYPE (type, VALA_TYPE_OBJECT_TYPE)) {
961 ValaTypeSymbol* _tmp0_;
962 ValaTypeSymbol* _tmp1_;
963 gchar* _tmp2_;
964 gchar* _tmp3_;
965 gboolean _tmp4_;
966 _tmp0_ = vala_data_type_get_type_symbol (type);
967 _tmp1_ = _tmp0_;
968 _tmp2_ = vala_symbol_get_full_name ((ValaSymbol*) _tmp1_);
969 _tmp3_ = _tmp2_;
970 _tmp4_ = g_strcmp0 (_tmp3_, "GLib.UnixInputStream") == 0;
971 _g_free0 (_tmp3_);
972 if (_tmp4_) {
973 ValaCCodeFunctionCall* _result_ = NULL;
974 ValaCCodeIdentifier* _tmp5_;
975 ValaCCodeIdentifier* _tmp6_;
976 ValaCCodeFunctionCall* _tmp7_;
977 ValaCCodeFunctionCall* _tmp8_;
978 ValaCCodeFunctionCall* _tmp9_;
979 ValaCCodeFunctionCall* _tmp10_;
980 ValaCCodeConstant* _tmp11_;
981 ValaCCodeConstant* _tmp12_;
982 ValaCCodeFunctionCall* _tmp13_;
983 ValaCCodeCastExpression* _tmp14_;
984 _tmp5_ = vala_ccode_identifier_new ("g_unix_input_stream_new");
985 _tmp6_ = _tmp5_;
986 _tmp7_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp6_);
987 _tmp8_ = _tmp7_;
988 _vala_ccode_node_unref0 (_tmp6_);
989 _result_ = _tmp8_;
990 _tmp9_ = _result_;
991 vala_ccode_function_call_add_argument (_tmp9_, expr);
992 _tmp10_ = _result_;
993 _tmp11_ = vala_ccode_constant_new ("TRUE");
994 _tmp12_ = _tmp11_;
995 vala_ccode_function_call_add_argument (_tmp10_, (ValaCCodeExpression*) _tmp12_);
996 _vala_ccode_node_unref0 (_tmp12_);
997 _tmp13_ = _result_;
998 _tmp14_ = vala_ccode_cast_expression_new ((ValaCCodeExpression*) _tmp13_, "GUnixInputStream *");
999 result = (ValaCCodeExpression*) _tmp14_;
1000 _vala_ccode_node_unref0 (_result_);
1001 return result;
1002 } else {
1003 ValaTypeSymbol* _tmp15_;
1004 ValaTypeSymbol* _tmp16_;
1005 gchar* _tmp17_;
1006 gchar* _tmp18_;
1007 gboolean _tmp19_;
1008 _tmp15_ = vala_data_type_get_type_symbol (type);
1009 _tmp16_ = _tmp15_;
1010 _tmp17_ = vala_symbol_get_full_name ((ValaSymbol*) _tmp16_);
1011 _tmp18_ = _tmp17_;
1012 _tmp19_ = g_strcmp0 (_tmp18_, "GLib.UnixOutputStream") == 0;
1013 _g_free0 (_tmp18_);
1014 if (_tmp19_) {
1015 ValaCCodeFunctionCall* _result_ = NULL;
1016 ValaCCodeIdentifier* _tmp20_;
1017 ValaCCodeIdentifier* _tmp21_;
1018 ValaCCodeFunctionCall* _tmp22_;
1019 ValaCCodeFunctionCall* _tmp23_;
1020 ValaCCodeFunctionCall* _tmp24_;
1021 ValaCCodeFunctionCall* _tmp25_;
1022 ValaCCodeConstant* _tmp26_;
1023 ValaCCodeConstant* _tmp27_;
1024 ValaCCodeFunctionCall* _tmp28_;
1025 ValaCCodeCastExpression* _tmp29_;
1026 _tmp20_ = vala_ccode_identifier_new ("g_unix_output_stream_new");
1027 _tmp21_ = _tmp20_;
1028 _tmp22_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp21_);
1029 _tmp23_ = _tmp22_;
1030 _vala_ccode_node_unref0 (_tmp21_);
1031 _result_ = _tmp23_;
1032 _tmp24_ = _result_;
1033 vala_ccode_function_call_add_argument (_tmp24_, expr);
1034 _tmp25_ = _result_;
1035 _tmp26_ = vala_ccode_constant_new ("TRUE");
1036 _tmp27_ = _tmp26_;
1037 vala_ccode_function_call_add_argument (_tmp25_, (ValaCCodeExpression*) _tmp27_);
1038 _vala_ccode_node_unref0 (_tmp27_);
1039 _tmp28_ = _result_;
1040 _tmp29_ = vala_ccode_cast_expression_new ((ValaCCodeExpression*) _tmp28_, "GUnixOutputStream *");
1041 result = (ValaCCodeExpression*) _tmp29_;
1042 _vala_ccode_node_unref0 (_result_);
1043 return result;
1044 } else {
1045 ValaTypeSymbol* _tmp30_;
1046 ValaTypeSymbol* _tmp31_;
1047 gchar* _tmp32_;
1048 gchar* _tmp33_;
1049 gboolean _tmp34_;
1050 _tmp30_ = vala_data_type_get_type_symbol (type);
1051 _tmp31_ = _tmp30_;
1052 _tmp32_ = vala_symbol_get_full_name ((ValaSymbol*) _tmp31_);
1053 _tmp33_ = _tmp32_;
1054 _tmp34_ = g_strcmp0 (_tmp33_, "GLib.Socket") == 0;
1055 _g_free0 (_tmp33_);
1056 if (_tmp34_) {
1057 ValaCCodeFunctionCall* _result_ = NULL;
1058 ValaCCodeIdentifier* _tmp35_;
1059 ValaCCodeIdentifier* _tmp36_;
1060 ValaCCodeFunctionCall* _tmp37_;
1061 ValaCCodeFunctionCall* _tmp38_;
1062 ValaCCodeFunctionCall* _tmp39_;
1063 ValaCCodeFunctionCall* _tmp40_;
1064 ValaCCodeConstant* _tmp41_;
1065 ValaCCodeConstant* _tmp42_;
1066 _tmp35_ = vala_ccode_identifier_new ("g_socket_new_from_fd");
1067 _tmp36_ = _tmp35_;
1068 _tmp37_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp36_);
1069 _tmp38_ = _tmp37_;
1070 _vala_ccode_node_unref0 (_tmp36_);
1071 _result_ = _tmp38_;
1072 _tmp39_ = _result_;
1073 vala_ccode_function_call_add_argument (_tmp39_, expr);
1074 _tmp40_ = _result_;
1075 _tmp41_ = vala_ccode_constant_new ("NULL");
1076 _tmp42_ = _tmp41_;
1077 vala_ccode_function_call_add_argument (_tmp40_, (ValaCCodeExpression*) _tmp42_);
1078 _vala_ccode_node_unref0 (_tmp42_);
1079 result = (ValaCCodeExpression*) _result_;
1080 return result;
1081 }
1082 }
1083 }
1084 }
1085 result = NULL;
1086 return result;
1087 }
1088
1089 void
vala_gd_bus_module_receive_dbus_value(ValaGDBusModule * self,ValaDataType * type,ValaCCodeExpression * message_expr,ValaCCodeExpression * iter_expr,ValaCCodeExpression * target_expr,ValaSymbol * sym,ValaCCodeExpression * error_expr,gboolean * may_fail)1090 vala_gd_bus_module_receive_dbus_value (ValaGDBusModule* self,
1091 ValaDataType* type,
1092 ValaCCodeExpression* message_expr,
1093 ValaCCodeExpression* iter_expr,
1094 ValaCCodeExpression* target_expr,
1095 ValaSymbol* sym,
1096 ValaCCodeExpression* error_expr,
1097 gboolean* may_fail)
1098 {
1099 gboolean _vala_may_fail = FALSE;
1100 ValaCCodeFunctionCall* fd_list = NULL;
1101 ValaCCodeIdentifier* _tmp0_;
1102 ValaCCodeIdentifier* _tmp1_;
1103 ValaCCodeFunctionCall* _tmp2_;
1104 ValaCCodeFunctionCall* _tmp3_;
1105 ValaCCodeFunctionCall* _tmp4_;
1106 ValaCCodeIdentifier* fd_var = NULL;
1107 ValaCCodeIdentifier* _tmp5_;
1108 ValaCCodeExpression* stream = NULL;
1109 ValaCCodeIdentifier* _tmp6_;
1110 ValaCCodeExpression* _tmp7_;
1111 ValaCCodeExpression* _tmp8_;
1112 g_return_if_fail (self != NULL);
1113 g_return_if_fail (type != NULL);
1114 g_return_if_fail (message_expr != NULL);
1115 g_return_if_fail (iter_expr != NULL);
1116 g_return_if_fail (target_expr != NULL);
1117 _tmp0_ = vala_ccode_identifier_new ("g_dbus_message_get_unix_fd_list");
1118 _tmp1_ = _tmp0_;
1119 _tmp2_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp1_);
1120 _tmp3_ = _tmp2_;
1121 _vala_ccode_node_unref0 (_tmp1_);
1122 fd_list = _tmp3_;
1123 _tmp4_ = fd_list;
1124 vala_ccode_function_call_add_argument (_tmp4_, message_expr);
1125 _tmp5_ = vala_ccode_identifier_new ("_fd");
1126 fd_var = _tmp5_;
1127 _tmp6_ = fd_var;
1128 _tmp7_ = vala_gd_bus_module_create_from_file_descriptor (self, type, (ValaCCodeExpression*) _tmp6_);
1129 stream = _tmp7_;
1130 _tmp8_ = stream;
1131 if (_tmp8_ != NULL) {
1132 ValaCCodeIdentifier* fd_list_var = NULL;
1133 ValaCCodeIdentifier* _tmp9_;
1134 ValaCCodeFunctionCall* fd = NULL;
1135 ValaCCodeIdentifier* _tmp10_;
1136 ValaCCodeIdentifier* _tmp11_;
1137 ValaCCodeFunctionCall* _tmp12_;
1138 ValaCCodeFunctionCall* _tmp13_;
1139 ValaCCodeFunctionCall* _tmp14_;
1140 ValaCCodeIdentifier* _tmp15_;
1141 ValaCCodeFunctionCall* _tmp16_;
1142 ValaCCodeIdentifier* _tmp17_;
1143 ValaCCodeIdentifier* _tmp18_;
1144 ValaCCodeFunctionCall* _tmp19_;
1145 ValaCCodeFunction* _tmp20_;
1146 ValaCCodeFunction* _tmp21_;
1147 ValaCCodeIdentifier* _tmp22_;
1148 ValaCCodeFunctionCall* _tmp23_;
1149 ValaCCodeFunction* _tmp24_;
1150 ValaCCodeFunction* _tmp25_;
1151 ValaCCodeIdentifier* _tmp26_;
1152 ValaCCodeFunctionCall* get_fd = NULL;
1153 ValaCCodeIdentifier* _tmp27_;
1154 ValaCCodeIdentifier* _tmp28_;
1155 ValaCCodeFunctionCall* _tmp29_;
1156 ValaCCodeFunctionCall* _tmp30_;
1157 ValaCCodeFunctionCall* _tmp31_;
1158 ValaCCodeUnaryExpression* _tmp32_;
1159 ValaCCodeUnaryExpression* _tmp33_;
1160 ValaCCodeFunctionCall* _tmp34_;
1161 ValaCCodeConstant* _tmp35_;
1162 ValaCCodeConstant* _tmp36_;
1163 ValaCCodeFunctionCall* _tmp37_;
1164 ValaCCodeIdentifier* _tmp38_;
1165 ValaCCodeIdentifier* _tmp39_;
1166 ValaCCodeUnaryExpression* _tmp40_;
1167 ValaCCodeUnaryExpression* _tmp41_;
1168 ValaCCodeFunction* _tmp42_;
1169 ValaCCodeFunction* _tmp43_;
1170 ValaCCodeFunctionCall* _tmp44_;
1171 ValaCCodeFunction* _tmp45_;
1172 ValaCCodeFunction* _tmp46_;
1173 ValaCCodeIdentifier* _tmp47_;
1174 ValaCCodeFunctionCall* _tmp48_;
1175 ValaCCodeFunction* _tmp49_;
1176 ValaCCodeFunction* _tmp50_;
1177 ValaCCodeIdentifier* _tmp51_;
1178 ValaCCodeConstant* _tmp52_;
1179 ValaCCodeConstant* _tmp53_;
1180 ValaCCodeBinaryExpression* _tmp54_;
1181 ValaCCodeBinaryExpression* _tmp55_;
1182 ValaCCodeFunction* _tmp56_;
1183 ValaCCodeFunction* _tmp57_;
1184 ValaCCodeExpression* _tmp58_;
1185 ValaCCodeFunction* _tmp59_;
1186 ValaCCodeFunction* _tmp60_;
1187 ValaCCodeFunction* _tmp61_;
1188 ValaCCodeFunction* _tmp62_;
1189 ValaCCodeFunctionCall* set_error = NULL;
1190 ValaCCodeIdentifier* _tmp63_;
1191 ValaCCodeIdentifier* _tmp64_;
1192 ValaCCodeFunctionCall* _tmp65_;
1193 ValaCCodeFunctionCall* _tmp66_;
1194 ValaCCodeFunctionCall* _tmp67_;
1195 ValaCCodeFunctionCall* _tmp68_;
1196 ValaCCodeIdentifier* _tmp69_;
1197 ValaCCodeIdentifier* _tmp70_;
1198 ValaCCodeFunctionCall* _tmp71_;
1199 ValaCCodeIdentifier* _tmp72_;
1200 ValaCCodeIdentifier* _tmp73_;
1201 ValaCCodeFunctionCall* _tmp74_;
1202 ValaCCodeConstant* _tmp75_;
1203 ValaCCodeConstant* _tmp76_;
1204 ValaCCodeFunction* _tmp77_;
1205 ValaCCodeFunction* _tmp78_;
1206 ValaCCodeFunctionCall* _tmp79_;
1207 ValaCCodeFunction* _tmp80_;
1208 ValaCCodeFunction* _tmp81_;
1209 _tmp9_ = vala_ccode_identifier_new ("_fd_list");
1210 fd_list_var = _tmp9_;
1211 _tmp10_ = vala_ccode_identifier_new ("g_unix_fd_list_get");
1212 _tmp11_ = _tmp10_;
1213 _tmp12_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp11_);
1214 _tmp13_ = _tmp12_;
1215 _vala_ccode_node_unref0 (_tmp11_);
1216 fd = _tmp13_;
1217 _tmp14_ = fd;
1218 _tmp15_ = fd_list_var;
1219 vala_ccode_function_call_add_argument (_tmp14_, (ValaCCodeExpression*) _tmp15_);
1220 _tmp16_ = fd;
1221 _tmp17_ = vala_ccode_identifier_new ("_fd_index");
1222 _tmp18_ = _tmp17_;
1223 vala_ccode_function_call_add_argument (_tmp16_, (ValaCCodeExpression*) _tmp18_);
1224 _vala_ccode_node_unref0 (_tmp18_);
1225 _tmp19_ = fd;
1226 vala_ccode_function_call_add_argument (_tmp19_, error_expr);
1227 _tmp20_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1228 _tmp21_ = _tmp20_;
1229 _tmp22_ = fd_list_var;
1230 _tmp23_ = fd_list;
1231 vala_ccode_function_add_assignment (_tmp21_, (ValaCCodeExpression*) _tmp22_, (ValaCCodeExpression*) _tmp23_);
1232 _tmp24_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1233 _tmp25_ = _tmp24_;
1234 _tmp26_ = fd_list_var;
1235 vala_ccode_function_open_if (_tmp25_, (ValaCCodeExpression*) _tmp26_);
1236 _tmp27_ = vala_ccode_identifier_new ("g_variant_iter_next");
1237 _tmp28_ = _tmp27_;
1238 _tmp29_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp28_);
1239 _tmp30_ = _tmp29_;
1240 _vala_ccode_node_unref0 (_tmp28_);
1241 get_fd = _tmp30_;
1242 _tmp31_ = get_fd;
1243 _tmp32_ = vala_ccode_unary_expression_new (VALA_CCODE_UNARY_OPERATOR_ADDRESS_OF, iter_expr);
1244 _tmp33_ = _tmp32_;
1245 vala_ccode_function_call_add_argument (_tmp31_, (ValaCCodeExpression*) _tmp33_);
1246 _vala_ccode_node_unref0 (_tmp33_);
1247 _tmp34_ = get_fd;
1248 _tmp35_ = vala_ccode_constant_new ("\"h\"");
1249 _tmp36_ = _tmp35_;
1250 vala_ccode_function_call_add_argument (_tmp34_, (ValaCCodeExpression*) _tmp36_);
1251 _vala_ccode_node_unref0 (_tmp36_);
1252 _tmp37_ = get_fd;
1253 _tmp38_ = vala_ccode_identifier_new ("_fd_index");
1254 _tmp39_ = _tmp38_;
1255 _tmp40_ = vala_ccode_unary_expression_new (VALA_CCODE_UNARY_OPERATOR_ADDRESS_OF, (ValaCCodeExpression*) _tmp39_);
1256 _tmp41_ = _tmp40_;
1257 vala_ccode_function_call_add_argument (_tmp37_, (ValaCCodeExpression*) _tmp41_);
1258 _vala_ccode_node_unref0 (_tmp41_);
1259 _vala_ccode_node_unref0 (_tmp39_);
1260 _tmp42_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1261 _tmp43_ = _tmp42_;
1262 _tmp44_ = get_fd;
1263 vala_ccode_function_add_expression (_tmp43_, (ValaCCodeExpression*) _tmp44_);
1264 _tmp45_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1265 _tmp46_ = _tmp45_;
1266 _tmp47_ = fd_var;
1267 _tmp48_ = fd;
1268 vala_ccode_function_add_assignment (_tmp46_, (ValaCCodeExpression*) _tmp47_, (ValaCCodeExpression*) _tmp48_);
1269 _tmp49_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1270 _tmp50_ = _tmp49_;
1271 _tmp51_ = fd_var;
1272 _tmp52_ = vala_ccode_constant_new ("0");
1273 _tmp53_ = _tmp52_;
1274 _tmp54_ = vala_ccode_binary_expression_new (VALA_CCODE_BINARY_OPERATOR_GREATER_THAN_OR_EQUAL, (ValaCCodeExpression*) _tmp51_, (ValaCCodeExpression*) _tmp53_);
1275 _tmp55_ = _tmp54_;
1276 vala_ccode_function_open_if (_tmp50_, (ValaCCodeExpression*) _tmp55_);
1277 _vala_ccode_node_unref0 (_tmp55_);
1278 _vala_ccode_node_unref0 (_tmp53_);
1279 _tmp56_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1280 _tmp57_ = _tmp56_;
1281 _tmp58_ = stream;
1282 vala_ccode_function_add_assignment (_tmp57_, target_expr, _tmp58_);
1283 _vala_may_fail = TRUE;
1284 _tmp59_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1285 _tmp60_ = _tmp59_;
1286 vala_ccode_function_close (_tmp60_);
1287 _tmp61_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1288 _tmp62_ = _tmp61_;
1289 vala_ccode_function_add_else (_tmp62_);
1290 _tmp63_ = vala_ccode_identifier_new ("g_set_error_literal");
1291 _tmp64_ = _tmp63_;
1292 _tmp65_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp64_);
1293 _tmp66_ = _tmp65_;
1294 _vala_ccode_node_unref0 (_tmp64_);
1295 set_error = _tmp66_;
1296 _tmp67_ = set_error;
1297 vala_ccode_function_call_add_argument (_tmp67_, error_expr);
1298 _tmp68_ = set_error;
1299 _tmp69_ = vala_ccode_identifier_new ("G_IO_ERROR");
1300 _tmp70_ = _tmp69_;
1301 vala_ccode_function_call_add_argument (_tmp68_, (ValaCCodeExpression*) _tmp70_);
1302 _vala_ccode_node_unref0 (_tmp70_);
1303 _tmp71_ = set_error;
1304 _tmp72_ = vala_ccode_identifier_new ("G_IO_ERROR_FAILED");
1305 _tmp73_ = _tmp72_;
1306 vala_ccode_function_call_add_argument (_tmp71_, (ValaCCodeExpression*) _tmp73_);
1307 _vala_ccode_node_unref0 (_tmp73_);
1308 _tmp74_ = set_error;
1309 _tmp75_ = vala_ccode_constant_new ("\"FD List is NULL\"");
1310 _tmp76_ = _tmp75_;
1311 vala_ccode_function_call_add_argument (_tmp74_, (ValaCCodeExpression*) _tmp76_);
1312 _vala_ccode_node_unref0 (_tmp76_);
1313 _tmp77_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1314 _tmp78_ = _tmp77_;
1315 _tmp79_ = set_error;
1316 vala_ccode_function_add_expression (_tmp78_, (ValaCCodeExpression*) _tmp79_);
1317 _tmp80_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1318 _tmp81_ = _tmp80_;
1319 vala_ccode_function_close (_tmp81_);
1320 _vala_ccode_node_unref0 (set_error);
1321 _vala_ccode_node_unref0 (get_fd);
1322 _vala_ccode_node_unref0 (fd);
1323 _vala_ccode_node_unref0 (fd_list_var);
1324 } else {
1325 gboolean _tmp82_ = FALSE;
1326 vala_gvariant_module_read_expression ((ValaGVariantModule*) self, type, iter_expr, target_expr, sym, error_expr, &_tmp82_);
1327 _vala_may_fail = _tmp82_;
1328 }
1329 _vala_ccode_node_unref0 (stream);
1330 _vala_ccode_node_unref0 (fd_var);
1331 _vala_ccode_node_unref0 (fd_list);
1332 if (may_fail) {
1333 *may_fail = _vala_may_fail;
1334 }
1335 }
1336
1337 static ValaCCodeExpression*
vala_gd_bus_module_get_method_info(ValaGDBusModule * self,ValaObjectTypeSymbol * sym)1338 vala_gd_bus_module_get_method_info (ValaGDBusModule* self,
1339 ValaObjectTypeSymbol* sym)
1340 {
1341 ValaCCodeInitializerList* infos = NULL;
1342 ValaCCodeInitializerList* _tmp0_;
1343 ValaCCodeInitializerList* _tmp365_;
1344 ValaCCodeConstant* _tmp366_;
1345 ValaCCodeConstant* _tmp367_;
1346 ValaCCodeDeclaration* _cdecl_ = NULL;
1347 ValaCCodeDeclaration* _tmp368_;
1348 gchar* _tmp369_;
1349 gchar* _tmp370_;
1350 gchar* _tmp371_;
1351 gchar* _tmp372_;
1352 gchar* _tmp373_;
1353 gchar* _tmp374_;
1354 ValaCCodeInitializerList* _tmp375_;
1355 ValaCCodeVariableDeclarator* _tmp376_;
1356 ValaCCodeVariableDeclarator* _tmp377_;
1357 ValaCCodeFile* _tmp378_;
1358 gchar* _tmp379_;
1359 gchar* _tmp380_;
1360 gchar* _tmp381_;
1361 gchar* _tmp382_;
1362 gchar* _tmp383_;
1363 gchar* _tmp384_;
1364 ValaCCodeIdentifier* _tmp385_;
1365 ValaCCodeExpression* _tmp386_;
1366 ValaCCodeExpression* result = NULL;
1367 g_return_val_if_fail (self != NULL, NULL);
1368 g_return_val_if_fail (sym != NULL, NULL);
1369 _tmp0_ = vala_ccode_initializer_list_new ();
1370 infos = _tmp0_;
1371 {
1372 ValaList* _m_list = NULL;
1373 ValaList* _tmp1_;
1374 ValaList* _tmp2_;
1375 gint _m_size = 0;
1376 ValaList* _tmp3_;
1377 gint _tmp4_;
1378 gint _tmp5_;
1379 gint _m_index = 0;
1380 _tmp1_ = vala_object_type_symbol_get_methods (sym);
1381 _tmp2_ = _vala_iterable_ref0 (_tmp1_);
1382 _m_list = _tmp2_;
1383 _tmp3_ = _m_list;
1384 _tmp4_ = vala_collection_get_size ((ValaCollection*) _tmp3_);
1385 _tmp5_ = _tmp4_;
1386 _m_size = _tmp5_;
1387 _m_index = -1;
1388 while (TRUE) {
1389 gint _tmp6_;
1390 gint _tmp7_;
1391 ValaMethod* m = NULL;
1392 ValaList* _tmp8_;
1393 gpointer _tmp9_;
1394 gboolean _tmp10_ = FALSE;
1395 gboolean _tmp11_ = FALSE;
1396 gboolean _tmp12_ = FALSE;
1397 ValaMethod* _tmp13_;
1398 ValaMethod* _tmp23_;
1399 ValaCCodeInitializerList* in_args_info = NULL;
1400 ValaCCodeInitializerList* _tmp24_;
1401 ValaCCodeInitializerList* out_args_info = NULL;
1402 ValaCCodeInitializerList* _tmp25_;
1403 ValaMethod* _tmp159_;
1404 ValaDataType* _tmp160_;
1405 ValaDataType* _tmp161_;
1406 ValaCCodeInitializerList* _tmp227_;
1407 ValaCCodeConstant* _tmp228_;
1408 ValaCCodeConstant* _tmp229_;
1409 ValaCCodeInitializerList* _tmp230_;
1410 ValaCCodeConstant* _tmp231_;
1411 ValaCCodeConstant* _tmp232_;
1412 ValaCCodeDeclaration* _cdecl_ = NULL;
1413 ValaCCodeDeclaration* _tmp233_;
1414 ValaCCodeDeclaration* _tmp234_;
1415 gchar* _tmp235_;
1416 gchar* _tmp236_;
1417 gchar* _tmp237_;
1418 gchar* _tmp238_;
1419 gchar* _tmp239_;
1420 gchar* _tmp240_;
1421 ValaMethod* _tmp241_;
1422 const gchar* _tmp242_;
1423 const gchar* _tmp243_;
1424 gchar* _tmp244_;
1425 gchar* _tmp245_;
1426 gchar* _tmp246_;
1427 gchar* _tmp247_;
1428 ValaCCodeInitializerList* _tmp248_;
1429 ValaCCodeVariableDeclarator* _tmp249_;
1430 ValaCCodeVariableDeclarator* _tmp250_;
1431 ValaCCodeDeclaration* _tmp251_;
1432 ValaCCodeFile* _tmp252_;
1433 ValaCCodeDeclaration* _tmp253_;
1434 ValaCCodeDeclaration* _tmp254_;
1435 ValaCCodeDeclaration* _tmp255_;
1436 gchar* _tmp256_;
1437 gchar* _tmp257_;
1438 gchar* _tmp258_;
1439 gchar* _tmp259_;
1440 gchar* _tmp260_;
1441 gchar* _tmp261_;
1442 ValaMethod* _tmp262_;
1443 const gchar* _tmp263_;
1444 const gchar* _tmp264_;
1445 gchar* _tmp265_;
1446 gchar* _tmp266_;
1447 gchar* _tmp267_;
1448 gchar* _tmp268_;
1449 ValaCCodeInitializerList* _tmp269_;
1450 ValaCCodeVariableDeclarator* _tmp270_;
1451 ValaCCodeVariableDeclarator* _tmp271_;
1452 ValaCCodeDeclaration* _tmp272_;
1453 ValaCCodeFile* _tmp273_;
1454 ValaCCodeDeclaration* _tmp274_;
1455 ValaCCodeInitializerList* info = NULL;
1456 ValaCCodeInitializerList* _tmp275_;
1457 ValaCCodeInitializerList* _tmp276_;
1458 ValaCCodeConstant* _tmp277_;
1459 ValaCCodeConstant* _tmp278_;
1460 ValaCCodeInitializerList* _tmp279_;
1461 ValaMethod* _tmp280_;
1462 gchar* _tmp281_;
1463 gchar* _tmp282_;
1464 gchar* _tmp283_;
1465 gchar* _tmp284_;
1466 ValaCCodeConstant* _tmp285_;
1467 ValaCCodeConstant* _tmp286_;
1468 ValaCCodeInitializerList* _tmp287_;
1469 gchar* _tmp288_;
1470 gchar* _tmp289_;
1471 gchar* _tmp290_;
1472 gchar* _tmp291_;
1473 gchar* _tmp292_;
1474 gchar* _tmp293_;
1475 ValaMethod* _tmp294_;
1476 const gchar* _tmp295_;
1477 const gchar* _tmp296_;
1478 gchar* _tmp297_;
1479 gchar* _tmp298_;
1480 gchar* _tmp299_;
1481 gchar* _tmp300_;
1482 ValaCCodeIdentifier* _tmp301_;
1483 ValaCCodeIdentifier* _tmp302_;
1484 ValaCCodeUnaryExpression* _tmp303_;
1485 ValaCCodeUnaryExpression* _tmp304_;
1486 ValaCCodeCastExpression* _tmp305_;
1487 ValaCCodeCastExpression* _tmp306_;
1488 ValaCCodeInitializerList* _tmp307_;
1489 gchar* _tmp308_;
1490 gchar* _tmp309_;
1491 gchar* _tmp310_;
1492 gchar* _tmp311_;
1493 gchar* _tmp312_;
1494 gchar* _tmp313_;
1495 ValaMethod* _tmp314_;
1496 const gchar* _tmp315_;
1497 const gchar* _tmp316_;
1498 gchar* _tmp317_;
1499 gchar* _tmp318_;
1500 gchar* _tmp319_;
1501 gchar* _tmp320_;
1502 ValaCCodeIdentifier* _tmp321_;
1503 ValaCCodeIdentifier* _tmp322_;
1504 ValaCCodeUnaryExpression* _tmp323_;
1505 ValaCCodeUnaryExpression* _tmp324_;
1506 ValaCCodeCastExpression* _tmp325_;
1507 ValaCCodeCastExpression* _tmp326_;
1508 ValaCCodeInitializerList* _tmp327_;
1509 ValaCCodeConstant* _tmp328_;
1510 ValaCCodeConstant* _tmp329_;
1511 ValaCCodeDeclaration* _tmp330_;
1512 ValaCCodeDeclaration* _tmp331_;
1513 gchar* _tmp332_;
1514 gchar* _tmp333_;
1515 gchar* _tmp334_;
1516 gchar* _tmp335_;
1517 gchar* _tmp336_;
1518 gchar* _tmp337_;
1519 ValaMethod* _tmp338_;
1520 const gchar* _tmp339_;
1521 const gchar* _tmp340_;
1522 gchar* _tmp341_;
1523 gchar* _tmp342_;
1524 ValaCCodeInitializerList* _tmp343_;
1525 ValaCCodeVariableDeclarator* _tmp344_;
1526 ValaCCodeVariableDeclarator* _tmp345_;
1527 ValaCCodeDeclaration* _tmp346_;
1528 ValaCCodeFile* _tmp347_;
1529 ValaCCodeDeclaration* _tmp348_;
1530 ValaCCodeInitializerList* _tmp349_;
1531 gchar* _tmp350_;
1532 gchar* _tmp351_;
1533 gchar* _tmp352_;
1534 gchar* _tmp353_;
1535 gchar* _tmp354_;
1536 gchar* _tmp355_;
1537 ValaMethod* _tmp356_;
1538 const gchar* _tmp357_;
1539 const gchar* _tmp358_;
1540 gchar* _tmp359_;
1541 gchar* _tmp360_;
1542 ValaCCodeIdentifier* _tmp361_;
1543 ValaCCodeIdentifier* _tmp362_;
1544 ValaCCodeUnaryExpression* _tmp363_;
1545 ValaCCodeUnaryExpression* _tmp364_;
1546 _m_index = _m_index + 1;
1547 _tmp6_ = _m_index;
1548 _tmp7_ = _m_size;
1549 if (!(_tmp6_ < _tmp7_)) {
1550 break;
1551 }
1552 _tmp8_ = _m_list;
1553 _tmp9_ = vala_list_get (_tmp8_, _m_index);
1554 m = (ValaMethod*) _tmp9_;
1555 _tmp13_ = m;
1556 if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp13_, VALA_TYPE_CREATION_METHOD)) {
1557 _tmp12_ = TRUE;
1558 } else {
1559 ValaMethod* _tmp14_;
1560 ValaMemberBinding _tmp15_;
1561 ValaMemberBinding _tmp16_;
1562 _tmp14_ = m;
1563 _tmp15_ = vala_method_get_binding (_tmp14_);
1564 _tmp16_ = _tmp15_;
1565 _tmp12_ = _tmp16_ != VALA_MEMBER_BINDING_INSTANCE;
1566 }
1567 if (_tmp12_) {
1568 _tmp11_ = TRUE;
1569 } else {
1570 ValaMethod* _tmp17_;
1571 gboolean _tmp18_;
1572 gboolean _tmp19_;
1573 _tmp17_ = m;
1574 _tmp18_ = vala_method_get_overrides (_tmp17_);
1575 _tmp19_ = _tmp18_;
1576 _tmp11_ = _tmp19_;
1577 }
1578 if (_tmp11_) {
1579 _tmp10_ = TRUE;
1580 } else {
1581 ValaMethod* _tmp20_;
1582 ValaSymbolAccessibility _tmp21_;
1583 ValaSymbolAccessibility _tmp22_;
1584 _tmp20_ = m;
1585 _tmp21_ = vala_symbol_get_access ((ValaSymbol*) _tmp20_);
1586 _tmp22_ = _tmp21_;
1587 _tmp10_ = _tmp22_ != VALA_SYMBOL_ACCESSIBILITY_PUBLIC;
1588 }
1589 if (_tmp10_) {
1590 _vala_code_node_unref0 (m);
1591 continue;
1592 }
1593 _tmp23_ = m;
1594 if (!vala_gd_bus_module_is_dbus_visible ((ValaCodeNode*) _tmp23_)) {
1595 _vala_code_node_unref0 (m);
1596 continue;
1597 }
1598 _tmp24_ = vala_ccode_initializer_list_new ();
1599 in_args_info = _tmp24_;
1600 _tmp25_ = vala_ccode_initializer_list_new ();
1601 out_args_info = _tmp25_;
1602 {
1603 ValaList* _param_list = NULL;
1604 ValaMethod* _tmp26_;
1605 ValaList* _tmp27_;
1606 ValaList* _tmp28_;
1607 gint _param_size = 0;
1608 ValaList* _tmp29_;
1609 gint _tmp30_;
1610 gint _tmp31_;
1611 gint _param_index = 0;
1612 _tmp26_ = m;
1613 _tmp27_ = vala_callable_get_parameters ((ValaCallable*) _tmp26_);
1614 _tmp28_ = _vala_iterable_ref0 (_tmp27_);
1615 _param_list = _tmp28_;
1616 _tmp29_ = _param_list;
1617 _tmp30_ = vala_collection_get_size ((ValaCollection*) _tmp29_);
1618 _tmp31_ = _tmp30_;
1619 _param_size = _tmp31_;
1620 _param_index = -1;
1621 while (TRUE) {
1622 gint _tmp32_;
1623 gint _tmp33_;
1624 ValaParameter* param = NULL;
1625 ValaList* _tmp34_;
1626 gpointer _tmp35_;
1627 gboolean _tmp36_ = FALSE;
1628 ValaParameter* _tmp37_;
1629 ValaDataType* _tmp38_;
1630 ValaDataType* _tmp39_;
1631 gboolean _tmp47_ = FALSE;
1632 ValaParameter* _tmp48_;
1633 ValaDataType* _tmp49_;
1634 ValaDataType* _tmp50_;
1635 ValaCCodeInitializerList* info = NULL;
1636 ValaCCodeInitializerList* _tmp58_;
1637 ValaCCodeInitializerList* _tmp59_;
1638 ValaCCodeConstant* _tmp60_;
1639 ValaCCodeConstant* _tmp61_;
1640 ValaCCodeInitializerList* _tmp62_;
1641 ValaParameter* _tmp63_;
1642 const gchar* _tmp64_;
1643 const gchar* _tmp65_;
1644 gchar* _tmp66_;
1645 gchar* _tmp67_;
1646 ValaCCodeConstant* _tmp68_;
1647 ValaCCodeConstant* _tmp69_;
1648 ValaCCodeInitializerList* _tmp70_;
1649 ValaParameter* _tmp71_;
1650 ValaDataType* _tmp72_;
1651 ValaDataType* _tmp73_;
1652 ValaParameter* _tmp74_;
1653 gchar* _tmp75_;
1654 gchar* _tmp76_;
1655 gchar* _tmp77_;
1656 gchar* _tmp78_;
1657 ValaCCodeConstant* _tmp79_;
1658 ValaCCodeConstant* _tmp80_;
1659 ValaCCodeInitializerList* _tmp81_;
1660 ValaCCodeConstant* _tmp82_;
1661 ValaCCodeConstant* _tmp83_;
1662 ValaCCodeDeclaration* _cdecl_ = NULL;
1663 ValaCCodeDeclaration* _tmp84_;
1664 ValaCCodeDeclaration* _tmp85_;
1665 gchar* _tmp86_;
1666 gchar* _tmp87_;
1667 gchar* _tmp88_;
1668 gchar* _tmp89_;
1669 gchar* _tmp90_;
1670 gchar* _tmp91_;
1671 ValaMethod* _tmp92_;
1672 const gchar* _tmp93_;
1673 const gchar* _tmp94_;
1674 gchar* _tmp95_;
1675 gchar* _tmp96_;
1676 gchar* _tmp97_;
1677 gchar* _tmp98_;
1678 ValaParameter* _tmp99_;
1679 const gchar* _tmp100_;
1680 const gchar* _tmp101_;
1681 gchar* _tmp102_;
1682 gchar* _tmp103_;
1683 ValaCCodeInitializerList* _tmp104_;
1684 ValaCCodeVariableDeclarator* _tmp105_;
1685 ValaCCodeVariableDeclarator* _tmp106_;
1686 ValaCCodeDeclaration* _tmp107_;
1687 ValaCCodeFile* _tmp108_;
1688 ValaCCodeDeclaration* _tmp109_;
1689 ValaParameter* _tmp110_;
1690 ValaParameterDirection _tmp111_;
1691 ValaParameterDirection _tmp112_;
1692 _param_index = _param_index + 1;
1693 _tmp32_ = _param_index;
1694 _tmp33_ = _param_size;
1695 if (!(_tmp32_ < _tmp33_)) {
1696 break;
1697 }
1698 _tmp34_ = _param_list;
1699 _tmp35_ = vala_list_get (_tmp34_, _param_index);
1700 param = (ValaParameter*) _tmp35_;
1701 _tmp37_ = param;
1702 _tmp38_ = vala_variable_get_variable_type ((ValaVariable*) _tmp37_);
1703 _tmp39_ = _tmp38_;
1704 if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp39_, VALA_TYPE_OBJECT_TYPE)) {
1705 ValaParameter* _tmp40_;
1706 ValaDataType* _tmp41_;
1707 ValaDataType* _tmp42_;
1708 ValaTypeSymbol* _tmp43_;
1709 ValaTypeSymbol* _tmp44_;
1710 gchar* _tmp45_;
1711 gchar* _tmp46_;
1712 _tmp40_ = param;
1713 _tmp41_ = vala_variable_get_variable_type ((ValaVariable*) _tmp40_);
1714 _tmp42_ = _tmp41_;
1715 _tmp43_ = vala_data_type_get_type_symbol (_tmp42_);
1716 _tmp44_ = _tmp43_;
1717 _tmp45_ = vala_symbol_get_full_name ((ValaSymbol*) _tmp44_);
1718 _tmp46_ = _tmp45_;
1719 _tmp36_ = g_strcmp0 (_tmp46_, "GLib.Cancellable") == 0;
1720 _g_free0 (_tmp46_);
1721 } else {
1722 _tmp36_ = FALSE;
1723 }
1724 if (_tmp36_) {
1725 _vala_code_node_unref0 (param);
1726 continue;
1727 }
1728 _tmp48_ = param;
1729 _tmp49_ = vala_variable_get_variable_type ((ValaVariable*) _tmp48_);
1730 _tmp50_ = _tmp49_;
1731 if (G_TYPE_CHECK_INSTANCE_TYPE (_tmp50_, VALA_TYPE_OBJECT_TYPE)) {
1732 ValaParameter* _tmp51_;
1733 ValaDataType* _tmp52_;
1734 ValaDataType* _tmp53_;
1735 ValaTypeSymbol* _tmp54_;
1736 ValaTypeSymbol* _tmp55_;
1737 gchar* _tmp56_;
1738 gchar* _tmp57_;
1739 _tmp51_ = param;
1740 _tmp52_ = vala_variable_get_variable_type ((ValaVariable*) _tmp51_);
1741 _tmp53_ = _tmp52_;
1742 _tmp54_ = vala_data_type_get_type_symbol (_tmp53_);
1743 _tmp55_ = _tmp54_;
1744 _tmp56_ = vala_symbol_get_full_name ((ValaSymbol*) _tmp55_);
1745 _tmp57_ = _tmp56_;
1746 _tmp47_ = g_strcmp0 (_tmp57_, "GLib.BusName") == 0;
1747 _g_free0 (_tmp57_);
1748 } else {
1749 _tmp47_ = FALSE;
1750 }
1751 if (_tmp47_) {
1752 _vala_code_node_unref0 (param);
1753 continue;
1754 }
1755 _tmp58_ = vala_ccode_initializer_list_new ();
1756 info = _tmp58_;
1757 _tmp59_ = info;
1758 _tmp60_ = vala_ccode_constant_new ("-1");
1759 _tmp61_ = _tmp60_;
1760 vala_ccode_initializer_list_append (_tmp59_, (ValaCCodeExpression*) _tmp61_);
1761 _vala_ccode_node_unref0 (_tmp61_);
1762 _tmp62_ = info;
1763 _tmp63_ = param;
1764 _tmp64_ = vala_symbol_get_name ((ValaSymbol*) _tmp63_);
1765 _tmp65_ = _tmp64_;
1766 _tmp66_ = g_strdup_printf ("\"%s\"", _tmp65_);
1767 _tmp67_ = _tmp66_;
1768 _tmp68_ = vala_ccode_constant_new (_tmp67_);
1769 _tmp69_ = _tmp68_;
1770 vala_ccode_initializer_list_append (_tmp62_, (ValaCCodeExpression*) _tmp69_);
1771 _vala_ccode_node_unref0 (_tmp69_);
1772 _g_free0 (_tmp67_);
1773 _tmp70_ = info;
1774 _tmp71_ = param;
1775 _tmp72_ = vala_variable_get_variable_type ((ValaVariable*) _tmp71_);
1776 _tmp73_ = _tmp72_;
1777 _tmp74_ = param;
1778 _tmp75_ = vala_data_type_get_type_signature (_tmp73_, (ValaSymbol*) _tmp74_);
1779 _tmp76_ = _tmp75_;
1780 _tmp77_ = g_strdup_printf ("\"%s\"", _tmp76_);
1781 _tmp78_ = _tmp77_;
1782 _tmp79_ = vala_ccode_constant_new (_tmp78_);
1783 _tmp80_ = _tmp79_;
1784 vala_ccode_initializer_list_append (_tmp70_, (ValaCCodeExpression*) _tmp80_);
1785 _vala_ccode_node_unref0 (_tmp80_);
1786 _g_free0 (_tmp78_);
1787 _g_free0 (_tmp76_);
1788 _tmp81_ = info;
1789 _tmp82_ = vala_ccode_constant_new ("NULL");
1790 _tmp83_ = _tmp82_;
1791 vala_ccode_initializer_list_append (_tmp81_, (ValaCCodeExpression*) _tmp83_);
1792 _vala_ccode_node_unref0 (_tmp83_);
1793 _tmp84_ = vala_ccode_declaration_new ("const GDBusArgInfo");
1794 _cdecl_ = _tmp84_;
1795 _tmp85_ = _cdecl_;
1796 _tmp86_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
1797 _tmp87_ = _tmp86_;
1798 _tmp88_ = g_strconcat ("_", _tmp87_, NULL);
1799 _tmp89_ = _tmp88_;
1800 _tmp90_ = g_strconcat (_tmp89_, "dbus_arg_info_", NULL);
1801 _tmp91_ = _tmp90_;
1802 _tmp92_ = m;
1803 _tmp93_ = vala_symbol_get_name ((ValaSymbol*) _tmp92_);
1804 _tmp94_ = _tmp93_;
1805 _tmp95_ = g_strconcat (_tmp91_, _tmp94_, NULL);
1806 _tmp96_ = _tmp95_;
1807 _tmp97_ = g_strconcat (_tmp96_, "_", NULL);
1808 _tmp98_ = _tmp97_;
1809 _tmp99_ = param;
1810 _tmp100_ = vala_symbol_get_name ((ValaSymbol*) _tmp99_);
1811 _tmp101_ = _tmp100_;
1812 _tmp102_ = g_strconcat (_tmp98_, _tmp101_, NULL);
1813 _tmp103_ = _tmp102_;
1814 _tmp104_ = info;
1815 _tmp105_ = vala_ccode_variable_declarator_new (_tmp103_, (ValaCCodeExpression*) _tmp104_, NULL);
1816 _tmp106_ = _tmp105_;
1817 vala_ccode_declaration_add_declarator (_tmp85_, (ValaCCodeDeclarator*) _tmp106_);
1818 _vala_ccode_node_unref0 (_tmp106_);
1819 _g_free0 (_tmp103_);
1820 _g_free0 (_tmp98_);
1821 _g_free0 (_tmp96_);
1822 _g_free0 (_tmp91_);
1823 _g_free0 (_tmp89_);
1824 _g_free0 (_tmp87_);
1825 _tmp107_ = _cdecl_;
1826 vala_ccode_node_set_modifiers ((ValaCCodeNode*) _tmp107_, VALA_CCODE_MODIFIERS_STATIC);
1827 _tmp108_ = ((ValaCCodeBaseModule*) self)->cfile;
1828 _tmp109_ = _cdecl_;
1829 vala_ccode_file_add_constant_declaration (_tmp108_, (ValaCCodeNode*) _tmp109_);
1830 _tmp110_ = param;
1831 _tmp111_ = vala_parameter_get_direction (_tmp110_);
1832 _tmp112_ = _tmp111_;
1833 if (_tmp112_ == VALA_PARAMETER_DIRECTION_IN) {
1834 ValaCCodeInitializerList* _tmp113_;
1835 gchar* _tmp114_;
1836 gchar* _tmp115_;
1837 gchar* _tmp116_;
1838 gchar* _tmp117_;
1839 gchar* _tmp118_;
1840 gchar* _tmp119_;
1841 ValaMethod* _tmp120_;
1842 const gchar* _tmp121_;
1843 const gchar* _tmp122_;
1844 gchar* _tmp123_;
1845 gchar* _tmp124_;
1846 gchar* _tmp125_;
1847 gchar* _tmp126_;
1848 ValaParameter* _tmp127_;
1849 const gchar* _tmp128_;
1850 const gchar* _tmp129_;
1851 gchar* _tmp130_;
1852 gchar* _tmp131_;
1853 ValaCCodeIdentifier* _tmp132_;
1854 ValaCCodeIdentifier* _tmp133_;
1855 ValaCCodeUnaryExpression* _tmp134_;
1856 ValaCCodeUnaryExpression* _tmp135_;
1857 _tmp113_ = in_args_info;
1858 _tmp114_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
1859 _tmp115_ = _tmp114_;
1860 _tmp116_ = g_strconcat ("_", _tmp115_, NULL);
1861 _tmp117_ = _tmp116_;
1862 _tmp118_ = g_strconcat (_tmp117_, "dbus_arg_info_", NULL);
1863 _tmp119_ = _tmp118_;
1864 _tmp120_ = m;
1865 _tmp121_ = vala_symbol_get_name ((ValaSymbol*) _tmp120_);
1866 _tmp122_ = _tmp121_;
1867 _tmp123_ = g_strconcat (_tmp119_, _tmp122_, NULL);
1868 _tmp124_ = _tmp123_;
1869 _tmp125_ = g_strconcat (_tmp124_, "_", NULL);
1870 _tmp126_ = _tmp125_;
1871 _tmp127_ = param;
1872 _tmp128_ = vala_symbol_get_name ((ValaSymbol*) _tmp127_);
1873 _tmp129_ = _tmp128_;
1874 _tmp130_ = g_strconcat (_tmp126_, _tmp129_, NULL);
1875 _tmp131_ = _tmp130_;
1876 _tmp132_ = vala_ccode_identifier_new (_tmp131_);
1877 _tmp133_ = _tmp132_;
1878 _tmp134_ = vala_ccode_unary_expression_new (VALA_CCODE_UNARY_OPERATOR_ADDRESS_OF, (ValaCCodeExpression*) _tmp133_);
1879 _tmp135_ = _tmp134_;
1880 vala_ccode_initializer_list_append (_tmp113_, (ValaCCodeExpression*) _tmp135_);
1881 _vala_ccode_node_unref0 (_tmp135_);
1882 _vala_ccode_node_unref0 (_tmp133_);
1883 _g_free0 (_tmp131_);
1884 _g_free0 (_tmp126_);
1885 _g_free0 (_tmp124_);
1886 _g_free0 (_tmp119_);
1887 _g_free0 (_tmp117_);
1888 _g_free0 (_tmp115_);
1889 } else {
1890 ValaCCodeInitializerList* _tmp136_;
1891 gchar* _tmp137_;
1892 gchar* _tmp138_;
1893 gchar* _tmp139_;
1894 gchar* _tmp140_;
1895 gchar* _tmp141_;
1896 gchar* _tmp142_;
1897 ValaMethod* _tmp143_;
1898 const gchar* _tmp144_;
1899 const gchar* _tmp145_;
1900 gchar* _tmp146_;
1901 gchar* _tmp147_;
1902 gchar* _tmp148_;
1903 gchar* _tmp149_;
1904 ValaParameter* _tmp150_;
1905 const gchar* _tmp151_;
1906 const gchar* _tmp152_;
1907 gchar* _tmp153_;
1908 gchar* _tmp154_;
1909 ValaCCodeIdentifier* _tmp155_;
1910 ValaCCodeIdentifier* _tmp156_;
1911 ValaCCodeUnaryExpression* _tmp157_;
1912 ValaCCodeUnaryExpression* _tmp158_;
1913 _tmp136_ = out_args_info;
1914 _tmp137_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
1915 _tmp138_ = _tmp137_;
1916 _tmp139_ = g_strconcat ("_", _tmp138_, NULL);
1917 _tmp140_ = _tmp139_;
1918 _tmp141_ = g_strconcat (_tmp140_, "dbus_arg_info_", NULL);
1919 _tmp142_ = _tmp141_;
1920 _tmp143_ = m;
1921 _tmp144_ = vala_symbol_get_name ((ValaSymbol*) _tmp143_);
1922 _tmp145_ = _tmp144_;
1923 _tmp146_ = g_strconcat (_tmp142_, _tmp145_, NULL);
1924 _tmp147_ = _tmp146_;
1925 _tmp148_ = g_strconcat (_tmp147_, "_", NULL);
1926 _tmp149_ = _tmp148_;
1927 _tmp150_ = param;
1928 _tmp151_ = vala_symbol_get_name ((ValaSymbol*) _tmp150_);
1929 _tmp152_ = _tmp151_;
1930 _tmp153_ = g_strconcat (_tmp149_, _tmp152_, NULL);
1931 _tmp154_ = _tmp153_;
1932 _tmp155_ = vala_ccode_identifier_new (_tmp154_);
1933 _tmp156_ = _tmp155_;
1934 _tmp157_ = vala_ccode_unary_expression_new (VALA_CCODE_UNARY_OPERATOR_ADDRESS_OF, (ValaCCodeExpression*) _tmp156_);
1935 _tmp158_ = _tmp157_;
1936 vala_ccode_initializer_list_append (_tmp136_, (ValaCCodeExpression*) _tmp158_);
1937 _vala_ccode_node_unref0 (_tmp158_);
1938 _vala_ccode_node_unref0 (_tmp156_);
1939 _g_free0 (_tmp154_);
1940 _g_free0 (_tmp149_);
1941 _g_free0 (_tmp147_);
1942 _g_free0 (_tmp142_);
1943 _g_free0 (_tmp140_);
1944 _g_free0 (_tmp138_);
1945 }
1946 _vala_ccode_node_unref0 (_cdecl_);
1947 _vala_ccode_node_unref0 (info);
1948 _vala_code_node_unref0 (param);
1949 }
1950 _vala_iterable_unref0 (_param_list);
1951 }
1952 _tmp159_ = m;
1953 _tmp160_ = vala_callable_get_return_type ((ValaCallable*) _tmp159_);
1954 _tmp161_ = _tmp160_;
1955 if (!G_TYPE_CHECK_INSTANCE_TYPE (_tmp161_, VALA_TYPE_VOID_TYPE)) {
1956 ValaCCodeInitializerList* info = NULL;
1957 ValaCCodeInitializerList* _tmp162_;
1958 ValaCCodeInitializerList* _tmp163_;
1959 ValaCCodeConstant* _tmp164_;
1960 ValaCCodeConstant* _tmp165_;
1961 ValaCCodeInitializerList* _tmp166_;
1962 ValaMethod* _tmp167_;
1963 gchar* _tmp168_;
1964 gchar* _tmp169_;
1965 gchar* _tmp170_;
1966 gchar* _tmp171_;
1967 ValaCCodeConstant* _tmp172_;
1968 ValaCCodeConstant* _tmp173_;
1969 ValaCCodeInitializerList* _tmp174_;
1970 ValaMethod* _tmp175_;
1971 ValaDataType* _tmp176_;
1972 ValaDataType* _tmp177_;
1973 ValaMethod* _tmp178_;
1974 gchar* _tmp179_;
1975 gchar* _tmp180_;
1976 gchar* _tmp181_;
1977 gchar* _tmp182_;
1978 ValaCCodeConstant* _tmp183_;
1979 ValaCCodeConstant* _tmp184_;
1980 ValaCCodeInitializerList* _tmp185_;
1981 ValaCCodeConstant* _tmp186_;
1982 ValaCCodeConstant* _tmp187_;
1983 ValaCCodeDeclaration* _cdecl_ = NULL;
1984 ValaCCodeDeclaration* _tmp188_;
1985 ValaCCodeDeclaration* _tmp189_;
1986 gchar* _tmp190_;
1987 gchar* _tmp191_;
1988 gchar* _tmp192_;
1989 gchar* _tmp193_;
1990 gchar* _tmp194_;
1991 gchar* _tmp195_;
1992 ValaMethod* _tmp196_;
1993 const gchar* _tmp197_;
1994 const gchar* _tmp198_;
1995 gchar* _tmp199_;
1996 gchar* _tmp200_;
1997 gchar* _tmp201_;
1998 gchar* _tmp202_;
1999 ValaCCodeInitializerList* _tmp203_;
2000 ValaCCodeVariableDeclarator* _tmp204_;
2001 ValaCCodeVariableDeclarator* _tmp205_;
2002 ValaCCodeDeclaration* _tmp206_;
2003 ValaCCodeFile* _tmp207_;
2004 ValaCCodeDeclaration* _tmp208_;
2005 ValaCCodeInitializerList* _tmp209_;
2006 gchar* _tmp210_;
2007 gchar* _tmp211_;
2008 gchar* _tmp212_;
2009 gchar* _tmp213_;
2010 gchar* _tmp214_;
2011 gchar* _tmp215_;
2012 ValaMethod* _tmp216_;
2013 const gchar* _tmp217_;
2014 const gchar* _tmp218_;
2015 gchar* _tmp219_;
2016 gchar* _tmp220_;
2017 gchar* _tmp221_;
2018 gchar* _tmp222_;
2019 ValaCCodeIdentifier* _tmp223_;
2020 ValaCCodeIdentifier* _tmp224_;
2021 ValaCCodeUnaryExpression* _tmp225_;
2022 ValaCCodeUnaryExpression* _tmp226_;
2023 _tmp162_ = vala_ccode_initializer_list_new ();
2024 info = _tmp162_;
2025 _tmp163_ = info;
2026 _tmp164_ = vala_ccode_constant_new ("-1");
2027 _tmp165_ = _tmp164_;
2028 vala_ccode_initializer_list_append (_tmp163_, (ValaCCodeExpression*) _tmp165_);
2029 _vala_ccode_node_unref0 (_tmp165_);
2030 _tmp166_ = info;
2031 _tmp167_ = m;
2032 _tmp168_ = vala_gd_bus_module_dbus_result_name (_tmp167_);
2033 _tmp169_ = _tmp168_;
2034 _tmp170_ = g_strdup_printf ("\"%s\"", _tmp169_);
2035 _tmp171_ = _tmp170_;
2036 _tmp172_ = vala_ccode_constant_new (_tmp171_);
2037 _tmp173_ = _tmp172_;
2038 vala_ccode_initializer_list_append (_tmp166_, (ValaCCodeExpression*) _tmp173_);
2039 _vala_ccode_node_unref0 (_tmp173_);
2040 _g_free0 (_tmp171_);
2041 _g_free0 (_tmp169_);
2042 _tmp174_ = info;
2043 _tmp175_ = m;
2044 _tmp176_ = vala_callable_get_return_type ((ValaCallable*) _tmp175_);
2045 _tmp177_ = _tmp176_;
2046 _tmp178_ = m;
2047 _tmp179_ = vala_data_type_get_type_signature (_tmp177_, (ValaSymbol*) _tmp178_);
2048 _tmp180_ = _tmp179_;
2049 _tmp181_ = g_strdup_printf ("\"%s\"", _tmp180_);
2050 _tmp182_ = _tmp181_;
2051 _tmp183_ = vala_ccode_constant_new (_tmp182_);
2052 _tmp184_ = _tmp183_;
2053 vala_ccode_initializer_list_append (_tmp174_, (ValaCCodeExpression*) _tmp184_);
2054 _vala_ccode_node_unref0 (_tmp184_);
2055 _g_free0 (_tmp182_);
2056 _g_free0 (_tmp180_);
2057 _tmp185_ = info;
2058 _tmp186_ = vala_ccode_constant_new ("NULL");
2059 _tmp187_ = _tmp186_;
2060 vala_ccode_initializer_list_append (_tmp185_, (ValaCCodeExpression*) _tmp187_);
2061 _vala_ccode_node_unref0 (_tmp187_);
2062 _tmp188_ = vala_ccode_declaration_new ("const GDBusArgInfo");
2063 _cdecl_ = _tmp188_;
2064 _tmp189_ = _cdecl_;
2065 _tmp190_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
2066 _tmp191_ = _tmp190_;
2067 _tmp192_ = g_strconcat ("_", _tmp191_, NULL);
2068 _tmp193_ = _tmp192_;
2069 _tmp194_ = g_strconcat (_tmp193_, "dbus_arg_info_", NULL);
2070 _tmp195_ = _tmp194_;
2071 _tmp196_ = m;
2072 _tmp197_ = vala_symbol_get_name ((ValaSymbol*) _tmp196_);
2073 _tmp198_ = _tmp197_;
2074 _tmp199_ = g_strconcat (_tmp195_, _tmp198_, NULL);
2075 _tmp200_ = _tmp199_;
2076 _tmp201_ = g_strconcat (_tmp200_, "_result", NULL);
2077 _tmp202_ = _tmp201_;
2078 _tmp203_ = info;
2079 _tmp204_ = vala_ccode_variable_declarator_new (_tmp202_, (ValaCCodeExpression*) _tmp203_, NULL);
2080 _tmp205_ = _tmp204_;
2081 vala_ccode_declaration_add_declarator (_tmp189_, (ValaCCodeDeclarator*) _tmp205_);
2082 _vala_ccode_node_unref0 (_tmp205_);
2083 _g_free0 (_tmp202_);
2084 _g_free0 (_tmp200_);
2085 _g_free0 (_tmp195_);
2086 _g_free0 (_tmp193_);
2087 _g_free0 (_tmp191_);
2088 _tmp206_ = _cdecl_;
2089 vala_ccode_node_set_modifiers ((ValaCCodeNode*) _tmp206_, VALA_CCODE_MODIFIERS_STATIC);
2090 _tmp207_ = ((ValaCCodeBaseModule*) self)->cfile;
2091 _tmp208_ = _cdecl_;
2092 vala_ccode_file_add_constant_declaration (_tmp207_, (ValaCCodeNode*) _tmp208_);
2093 _tmp209_ = out_args_info;
2094 _tmp210_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
2095 _tmp211_ = _tmp210_;
2096 _tmp212_ = g_strconcat ("_", _tmp211_, NULL);
2097 _tmp213_ = _tmp212_;
2098 _tmp214_ = g_strconcat (_tmp213_, "dbus_arg_info_", NULL);
2099 _tmp215_ = _tmp214_;
2100 _tmp216_ = m;
2101 _tmp217_ = vala_symbol_get_name ((ValaSymbol*) _tmp216_);
2102 _tmp218_ = _tmp217_;
2103 _tmp219_ = g_strconcat (_tmp215_, _tmp218_, NULL);
2104 _tmp220_ = _tmp219_;
2105 _tmp221_ = g_strconcat (_tmp220_, "_result", NULL);
2106 _tmp222_ = _tmp221_;
2107 _tmp223_ = vala_ccode_identifier_new (_tmp222_);
2108 _tmp224_ = _tmp223_;
2109 _tmp225_ = vala_ccode_unary_expression_new (VALA_CCODE_UNARY_OPERATOR_ADDRESS_OF, (ValaCCodeExpression*) _tmp224_);
2110 _tmp226_ = _tmp225_;
2111 vala_ccode_initializer_list_append (_tmp209_, (ValaCCodeExpression*) _tmp226_);
2112 _vala_ccode_node_unref0 (_tmp226_);
2113 _vala_ccode_node_unref0 (_tmp224_);
2114 _g_free0 (_tmp222_);
2115 _g_free0 (_tmp220_);
2116 _g_free0 (_tmp215_);
2117 _g_free0 (_tmp213_);
2118 _g_free0 (_tmp211_);
2119 _vala_ccode_node_unref0 (_cdecl_);
2120 _vala_ccode_node_unref0 (info);
2121 }
2122 _tmp227_ = in_args_info;
2123 _tmp228_ = vala_ccode_constant_new ("NULL");
2124 _tmp229_ = _tmp228_;
2125 vala_ccode_initializer_list_append (_tmp227_, (ValaCCodeExpression*) _tmp229_);
2126 _vala_ccode_node_unref0 (_tmp229_);
2127 _tmp230_ = out_args_info;
2128 _tmp231_ = vala_ccode_constant_new ("NULL");
2129 _tmp232_ = _tmp231_;
2130 vala_ccode_initializer_list_append (_tmp230_, (ValaCCodeExpression*) _tmp232_);
2131 _vala_ccode_node_unref0 (_tmp232_);
2132 _tmp233_ = vala_ccode_declaration_new ("const GDBusArgInfo * const");
2133 _cdecl_ = _tmp233_;
2134 _tmp234_ = _cdecl_;
2135 _tmp235_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
2136 _tmp236_ = _tmp235_;
2137 _tmp237_ = g_strconcat ("_", _tmp236_, NULL);
2138 _tmp238_ = _tmp237_;
2139 _tmp239_ = g_strconcat (_tmp238_, "dbus_arg_info_", NULL);
2140 _tmp240_ = _tmp239_;
2141 _tmp241_ = m;
2142 _tmp242_ = vala_symbol_get_name ((ValaSymbol*) _tmp241_);
2143 _tmp243_ = _tmp242_;
2144 _tmp244_ = g_strconcat (_tmp240_, _tmp243_, NULL);
2145 _tmp245_ = _tmp244_;
2146 _tmp246_ = g_strconcat (_tmp245_, "_in[]", NULL);
2147 _tmp247_ = _tmp246_;
2148 _tmp248_ = in_args_info;
2149 _tmp249_ = vala_ccode_variable_declarator_new (_tmp247_, (ValaCCodeExpression*) _tmp248_, NULL);
2150 _tmp250_ = _tmp249_;
2151 vala_ccode_declaration_add_declarator (_tmp234_, (ValaCCodeDeclarator*) _tmp250_);
2152 _vala_ccode_node_unref0 (_tmp250_);
2153 _g_free0 (_tmp247_);
2154 _g_free0 (_tmp245_);
2155 _g_free0 (_tmp240_);
2156 _g_free0 (_tmp238_);
2157 _g_free0 (_tmp236_);
2158 _tmp251_ = _cdecl_;
2159 vala_ccode_node_set_modifiers ((ValaCCodeNode*) _tmp251_, VALA_CCODE_MODIFIERS_STATIC);
2160 _tmp252_ = ((ValaCCodeBaseModule*) self)->cfile;
2161 _tmp253_ = _cdecl_;
2162 vala_ccode_file_add_constant_declaration (_tmp252_, (ValaCCodeNode*) _tmp253_);
2163 _tmp254_ = vala_ccode_declaration_new ("const GDBusArgInfo * const");
2164 _vala_ccode_node_unref0 (_cdecl_);
2165 _cdecl_ = _tmp254_;
2166 _tmp255_ = _cdecl_;
2167 _tmp256_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
2168 _tmp257_ = _tmp256_;
2169 _tmp258_ = g_strconcat ("_", _tmp257_, NULL);
2170 _tmp259_ = _tmp258_;
2171 _tmp260_ = g_strconcat (_tmp259_, "dbus_arg_info_", NULL);
2172 _tmp261_ = _tmp260_;
2173 _tmp262_ = m;
2174 _tmp263_ = vala_symbol_get_name ((ValaSymbol*) _tmp262_);
2175 _tmp264_ = _tmp263_;
2176 _tmp265_ = g_strconcat (_tmp261_, _tmp264_, NULL);
2177 _tmp266_ = _tmp265_;
2178 _tmp267_ = g_strconcat (_tmp266_, "_out[]", NULL);
2179 _tmp268_ = _tmp267_;
2180 _tmp269_ = out_args_info;
2181 _tmp270_ = vala_ccode_variable_declarator_new (_tmp268_, (ValaCCodeExpression*) _tmp269_, NULL);
2182 _tmp271_ = _tmp270_;
2183 vala_ccode_declaration_add_declarator (_tmp255_, (ValaCCodeDeclarator*) _tmp271_);
2184 _vala_ccode_node_unref0 (_tmp271_);
2185 _g_free0 (_tmp268_);
2186 _g_free0 (_tmp266_);
2187 _g_free0 (_tmp261_);
2188 _g_free0 (_tmp259_);
2189 _g_free0 (_tmp257_);
2190 _tmp272_ = _cdecl_;
2191 vala_ccode_node_set_modifiers ((ValaCCodeNode*) _tmp272_, VALA_CCODE_MODIFIERS_STATIC);
2192 _tmp273_ = ((ValaCCodeBaseModule*) self)->cfile;
2193 _tmp274_ = _cdecl_;
2194 vala_ccode_file_add_constant_declaration (_tmp273_, (ValaCCodeNode*) _tmp274_);
2195 _tmp275_ = vala_ccode_initializer_list_new ();
2196 info = _tmp275_;
2197 _tmp276_ = info;
2198 _tmp277_ = vala_ccode_constant_new ("-1");
2199 _tmp278_ = _tmp277_;
2200 vala_ccode_initializer_list_append (_tmp276_, (ValaCCodeExpression*) _tmp278_);
2201 _vala_ccode_node_unref0 (_tmp278_);
2202 _tmp279_ = info;
2203 _tmp280_ = m;
2204 _tmp281_ = vala_gd_bus_module_get_dbus_name_for_member ((ValaSymbol*) _tmp280_);
2205 _tmp282_ = _tmp281_;
2206 _tmp283_ = g_strdup_printf ("\"%s\"", _tmp282_);
2207 _tmp284_ = _tmp283_;
2208 _tmp285_ = vala_ccode_constant_new (_tmp284_);
2209 _tmp286_ = _tmp285_;
2210 vala_ccode_initializer_list_append (_tmp279_, (ValaCCodeExpression*) _tmp286_);
2211 _vala_ccode_node_unref0 (_tmp286_);
2212 _g_free0 (_tmp284_);
2213 _g_free0 (_tmp282_);
2214 _tmp287_ = info;
2215 _tmp288_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
2216 _tmp289_ = _tmp288_;
2217 _tmp290_ = g_strconcat ("_", _tmp289_, NULL);
2218 _tmp291_ = _tmp290_;
2219 _tmp292_ = g_strconcat (_tmp291_, "dbus_arg_info_", NULL);
2220 _tmp293_ = _tmp292_;
2221 _tmp294_ = m;
2222 _tmp295_ = vala_symbol_get_name ((ValaSymbol*) _tmp294_);
2223 _tmp296_ = _tmp295_;
2224 _tmp297_ = g_strconcat (_tmp293_, _tmp296_, NULL);
2225 _tmp298_ = _tmp297_;
2226 _tmp299_ = g_strconcat (_tmp298_, "_in", NULL);
2227 _tmp300_ = _tmp299_;
2228 _tmp301_ = vala_ccode_identifier_new (_tmp300_);
2229 _tmp302_ = _tmp301_;
2230 _tmp303_ = vala_ccode_unary_expression_new (VALA_CCODE_UNARY_OPERATOR_ADDRESS_OF, (ValaCCodeExpression*) _tmp302_);
2231 _tmp304_ = _tmp303_;
2232 _tmp305_ = vala_ccode_cast_expression_new ((ValaCCodeExpression*) _tmp304_, "GDBusArgInfo **");
2233 _tmp306_ = _tmp305_;
2234 vala_ccode_initializer_list_append (_tmp287_, (ValaCCodeExpression*) _tmp306_);
2235 _vala_ccode_node_unref0 (_tmp306_);
2236 _vala_ccode_node_unref0 (_tmp304_);
2237 _vala_ccode_node_unref0 (_tmp302_);
2238 _g_free0 (_tmp300_);
2239 _g_free0 (_tmp298_);
2240 _g_free0 (_tmp293_);
2241 _g_free0 (_tmp291_);
2242 _g_free0 (_tmp289_);
2243 _tmp307_ = info;
2244 _tmp308_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
2245 _tmp309_ = _tmp308_;
2246 _tmp310_ = g_strconcat ("_", _tmp309_, NULL);
2247 _tmp311_ = _tmp310_;
2248 _tmp312_ = g_strconcat (_tmp311_, "dbus_arg_info_", NULL);
2249 _tmp313_ = _tmp312_;
2250 _tmp314_ = m;
2251 _tmp315_ = vala_symbol_get_name ((ValaSymbol*) _tmp314_);
2252 _tmp316_ = _tmp315_;
2253 _tmp317_ = g_strconcat (_tmp313_, _tmp316_, NULL);
2254 _tmp318_ = _tmp317_;
2255 _tmp319_ = g_strconcat (_tmp318_, "_out", NULL);
2256 _tmp320_ = _tmp319_;
2257 _tmp321_ = vala_ccode_identifier_new (_tmp320_);
2258 _tmp322_ = _tmp321_;
2259 _tmp323_ = vala_ccode_unary_expression_new (VALA_CCODE_UNARY_OPERATOR_ADDRESS_OF, (ValaCCodeExpression*) _tmp322_);
2260 _tmp324_ = _tmp323_;
2261 _tmp325_ = vala_ccode_cast_expression_new ((ValaCCodeExpression*) _tmp324_, "GDBusArgInfo **");
2262 _tmp326_ = _tmp325_;
2263 vala_ccode_initializer_list_append (_tmp307_, (ValaCCodeExpression*) _tmp326_);
2264 _vala_ccode_node_unref0 (_tmp326_);
2265 _vala_ccode_node_unref0 (_tmp324_);
2266 _vala_ccode_node_unref0 (_tmp322_);
2267 _g_free0 (_tmp320_);
2268 _g_free0 (_tmp318_);
2269 _g_free0 (_tmp313_);
2270 _g_free0 (_tmp311_);
2271 _g_free0 (_tmp309_);
2272 _tmp327_ = info;
2273 _tmp328_ = vala_ccode_constant_new ("NULL");
2274 _tmp329_ = _tmp328_;
2275 vala_ccode_initializer_list_append (_tmp327_, (ValaCCodeExpression*) _tmp329_);
2276 _vala_ccode_node_unref0 (_tmp329_);
2277 _tmp330_ = vala_ccode_declaration_new ("const GDBusMethodInfo");
2278 _vala_ccode_node_unref0 (_cdecl_);
2279 _cdecl_ = _tmp330_;
2280 _tmp331_ = _cdecl_;
2281 _tmp332_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
2282 _tmp333_ = _tmp332_;
2283 _tmp334_ = g_strconcat ("_", _tmp333_, NULL);
2284 _tmp335_ = _tmp334_;
2285 _tmp336_ = g_strconcat (_tmp335_, "dbus_method_info_", NULL);
2286 _tmp337_ = _tmp336_;
2287 _tmp338_ = m;
2288 _tmp339_ = vala_symbol_get_name ((ValaSymbol*) _tmp338_);
2289 _tmp340_ = _tmp339_;
2290 _tmp341_ = g_strconcat (_tmp337_, _tmp340_, NULL);
2291 _tmp342_ = _tmp341_;
2292 _tmp343_ = info;
2293 _tmp344_ = vala_ccode_variable_declarator_new (_tmp342_, (ValaCCodeExpression*) _tmp343_, NULL);
2294 _tmp345_ = _tmp344_;
2295 vala_ccode_declaration_add_declarator (_tmp331_, (ValaCCodeDeclarator*) _tmp345_);
2296 _vala_ccode_node_unref0 (_tmp345_);
2297 _g_free0 (_tmp342_);
2298 _g_free0 (_tmp337_);
2299 _g_free0 (_tmp335_);
2300 _g_free0 (_tmp333_);
2301 _tmp346_ = _cdecl_;
2302 vala_ccode_node_set_modifiers ((ValaCCodeNode*) _tmp346_, VALA_CCODE_MODIFIERS_STATIC);
2303 _tmp347_ = ((ValaCCodeBaseModule*) self)->cfile;
2304 _tmp348_ = _cdecl_;
2305 vala_ccode_file_add_constant_declaration (_tmp347_, (ValaCCodeNode*) _tmp348_);
2306 _tmp349_ = infos;
2307 _tmp350_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
2308 _tmp351_ = _tmp350_;
2309 _tmp352_ = g_strconcat ("_", _tmp351_, NULL);
2310 _tmp353_ = _tmp352_;
2311 _tmp354_ = g_strconcat (_tmp353_, "dbus_method_info_", NULL);
2312 _tmp355_ = _tmp354_;
2313 _tmp356_ = m;
2314 _tmp357_ = vala_symbol_get_name ((ValaSymbol*) _tmp356_);
2315 _tmp358_ = _tmp357_;
2316 _tmp359_ = g_strconcat (_tmp355_, _tmp358_, NULL);
2317 _tmp360_ = _tmp359_;
2318 _tmp361_ = vala_ccode_identifier_new (_tmp360_);
2319 _tmp362_ = _tmp361_;
2320 _tmp363_ = vala_ccode_unary_expression_new (VALA_CCODE_UNARY_OPERATOR_ADDRESS_OF, (ValaCCodeExpression*) _tmp362_);
2321 _tmp364_ = _tmp363_;
2322 vala_ccode_initializer_list_append (_tmp349_, (ValaCCodeExpression*) _tmp364_);
2323 _vala_ccode_node_unref0 (_tmp364_);
2324 _vala_ccode_node_unref0 (_tmp362_);
2325 _g_free0 (_tmp360_);
2326 _g_free0 (_tmp355_);
2327 _g_free0 (_tmp353_);
2328 _g_free0 (_tmp351_);
2329 _vala_ccode_node_unref0 (info);
2330 _vala_ccode_node_unref0 (_cdecl_);
2331 _vala_ccode_node_unref0 (out_args_info);
2332 _vala_ccode_node_unref0 (in_args_info);
2333 _vala_code_node_unref0 (m);
2334 }
2335 _vala_iterable_unref0 (_m_list);
2336 }
2337 _tmp365_ = infos;
2338 _tmp366_ = vala_ccode_constant_new ("NULL");
2339 _tmp367_ = _tmp366_;
2340 vala_ccode_initializer_list_append (_tmp365_, (ValaCCodeExpression*) _tmp367_);
2341 _vala_ccode_node_unref0 (_tmp367_);
2342 _tmp368_ = vala_ccode_declaration_new ("const GDBusMethodInfo * const");
2343 _cdecl_ = _tmp368_;
2344 _tmp369_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
2345 _tmp370_ = _tmp369_;
2346 _tmp371_ = g_strconcat ("_", _tmp370_, NULL);
2347 _tmp372_ = _tmp371_;
2348 _tmp373_ = g_strconcat (_tmp372_, "dbus_method_info[]", NULL);
2349 _tmp374_ = _tmp373_;
2350 _tmp375_ = infos;
2351 _tmp376_ = vala_ccode_variable_declarator_new (_tmp374_, (ValaCCodeExpression*) _tmp375_, NULL);
2352 _tmp377_ = _tmp376_;
2353 vala_ccode_declaration_add_declarator (_cdecl_, (ValaCCodeDeclarator*) _tmp377_);
2354 _vala_ccode_node_unref0 (_tmp377_);
2355 _g_free0 (_tmp374_);
2356 _g_free0 (_tmp372_);
2357 _g_free0 (_tmp370_);
2358 vala_ccode_node_set_modifiers ((ValaCCodeNode*) _cdecl_, VALA_CCODE_MODIFIERS_STATIC);
2359 _tmp378_ = ((ValaCCodeBaseModule*) self)->cfile;
2360 vala_ccode_file_add_constant_declaration (_tmp378_, (ValaCCodeNode*) _cdecl_);
2361 _tmp379_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
2362 _tmp380_ = _tmp379_;
2363 _tmp381_ = g_strconcat ("_", _tmp380_, NULL);
2364 _tmp382_ = _tmp381_;
2365 _tmp383_ = g_strconcat (_tmp382_, "dbus_method_info", NULL);
2366 _tmp384_ = _tmp383_;
2367 _tmp385_ = vala_ccode_identifier_new (_tmp384_);
2368 _tmp386_ = (ValaCCodeExpression*) _tmp385_;
2369 _g_free0 (_tmp384_);
2370 _g_free0 (_tmp382_);
2371 _g_free0 (_tmp380_);
2372 result = _tmp386_;
2373 _vala_ccode_node_unref0 (_cdecl_);
2374 _vala_ccode_node_unref0 (infos);
2375 return result;
2376 }
2377
2378 static ValaCCodeExpression*
vala_gd_bus_module_get_signal_info(ValaGDBusModule * self,ValaObjectTypeSymbol * sym)2379 vala_gd_bus_module_get_signal_info (ValaGDBusModule* self,
2380 ValaObjectTypeSymbol* sym)
2381 {
2382 ValaCCodeInitializerList* infos = NULL;
2383 ValaCCodeInitializerList* _tmp0_;
2384 ValaCCodeInitializerList* _tmp192_;
2385 ValaCCodeConstant* _tmp193_;
2386 ValaCCodeConstant* _tmp194_;
2387 ValaCCodeDeclaration* _cdecl_ = NULL;
2388 ValaCCodeDeclaration* _tmp195_;
2389 gchar* _tmp196_;
2390 gchar* _tmp197_;
2391 gchar* _tmp198_;
2392 gchar* _tmp199_;
2393 gchar* _tmp200_;
2394 gchar* _tmp201_;
2395 ValaCCodeInitializerList* _tmp202_;
2396 ValaCCodeVariableDeclarator* _tmp203_;
2397 ValaCCodeVariableDeclarator* _tmp204_;
2398 ValaCCodeFile* _tmp205_;
2399 gchar* _tmp206_;
2400 gchar* _tmp207_;
2401 gchar* _tmp208_;
2402 gchar* _tmp209_;
2403 gchar* _tmp210_;
2404 gchar* _tmp211_;
2405 ValaCCodeIdentifier* _tmp212_;
2406 ValaCCodeExpression* _tmp213_;
2407 ValaCCodeExpression* result = NULL;
2408 g_return_val_if_fail (self != NULL, NULL);
2409 g_return_val_if_fail (sym != NULL, NULL);
2410 _tmp0_ = vala_ccode_initializer_list_new ();
2411 infos = _tmp0_;
2412 {
2413 ValaList* _sig_list = NULL;
2414 ValaList* _tmp1_;
2415 ValaList* _tmp2_;
2416 gint _sig_size = 0;
2417 ValaList* _tmp3_;
2418 gint _tmp4_;
2419 gint _tmp5_;
2420 gint _sig_index = 0;
2421 _tmp1_ = vala_object_type_symbol_get_signals (sym);
2422 _tmp2_ = _vala_iterable_ref0 (_tmp1_);
2423 _sig_list = _tmp2_;
2424 _tmp3_ = _sig_list;
2425 _tmp4_ = vala_collection_get_size ((ValaCollection*) _tmp3_);
2426 _tmp5_ = _tmp4_;
2427 _sig_size = _tmp5_;
2428 _sig_index = -1;
2429 while (TRUE) {
2430 gint _tmp6_;
2431 gint _tmp7_;
2432 ValaSignal* sig = NULL;
2433 ValaList* _tmp8_;
2434 gpointer _tmp9_;
2435 ValaSignal* _tmp10_;
2436 ValaSymbolAccessibility _tmp11_;
2437 ValaSymbolAccessibility _tmp12_;
2438 ValaSignal* _tmp13_;
2439 ValaCCodeInitializerList* args_info = NULL;
2440 ValaCCodeInitializerList* _tmp14_;
2441 ValaCCodeInitializerList* _tmp100_;
2442 ValaCCodeConstant* _tmp101_;
2443 ValaCCodeConstant* _tmp102_;
2444 ValaCCodeDeclaration* _cdecl_ = NULL;
2445 ValaCCodeDeclaration* _tmp103_;
2446 ValaCCodeDeclaration* _tmp104_;
2447 gchar* _tmp105_;
2448 gchar* _tmp106_;
2449 gchar* _tmp107_;
2450 gchar* _tmp108_;
2451 gchar* _tmp109_;
2452 gchar* _tmp110_;
2453 ValaSignal* _tmp111_;
2454 gchar* _tmp112_;
2455 gchar* _tmp113_;
2456 gchar* _tmp114_;
2457 gchar* _tmp115_;
2458 gchar* _tmp116_;
2459 gchar* _tmp117_;
2460 ValaCCodeInitializerList* _tmp118_;
2461 ValaCCodeVariableDeclarator* _tmp119_;
2462 ValaCCodeVariableDeclarator* _tmp120_;
2463 ValaCCodeDeclaration* _tmp121_;
2464 ValaCCodeFile* _tmp122_;
2465 ValaCCodeDeclaration* _tmp123_;
2466 ValaCCodeInitializerList* info = NULL;
2467 ValaCCodeInitializerList* _tmp124_;
2468 ValaCCodeInitializerList* _tmp125_;
2469 ValaCCodeConstant* _tmp126_;
2470 ValaCCodeConstant* _tmp127_;
2471 ValaCCodeInitializerList* _tmp128_;
2472 ValaSignal* _tmp129_;
2473 gchar* _tmp130_;
2474 gchar* _tmp131_;
2475 gchar* _tmp132_;
2476 gchar* _tmp133_;
2477 ValaCCodeConstant* _tmp134_;
2478 ValaCCodeConstant* _tmp135_;
2479 ValaCCodeInitializerList* _tmp136_;
2480 gchar* _tmp137_;
2481 gchar* _tmp138_;
2482 gchar* _tmp139_;
2483 gchar* _tmp140_;
2484 gchar* _tmp141_;
2485 gchar* _tmp142_;
2486 ValaSignal* _tmp143_;
2487 gchar* _tmp144_;
2488 gchar* _tmp145_;
2489 gchar* _tmp146_;
2490 gchar* _tmp147_;
2491 ValaCCodeIdentifier* _tmp148_;
2492 ValaCCodeIdentifier* _tmp149_;
2493 ValaCCodeUnaryExpression* _tmp150_;
2494 ValaCCodeUnaryExpression* _tmp151_;
2495 ValaCCodeCastExpression* _tmp152_;
2496 ValaCCodeCastExpression* _tmp153_;
2497 ValaCCodeInitializerList* _tmp154_;
2498 ValaCCodeConstant* _tmp155_;
2499 ValaCCodeConstant* _tmp156_;
2500 ValaCCodeDeclaration* _tmp157_;
2501 ValaCCodeDeclaration* _tmp158_;
2502 gchar* _tmp159_;
2503 gchar* _tmp160_;
2504 gchar* _tmp161_;
2505 gchar* _tmp162_;
2506 gchar* _tmp163_;
2507 gchar* _tmp164_;
2508 ValaSignal* _tmp165_;
2509 gchar* _tmp166_;
2510 gchar* _tmp167_;
2511 gchar* _tmp168_;
2512 gchar* _tmp169_;
2513 ValaCCodeInitializerList* _tmp170_;
2514 ValaCCodeVariableDeclarator* _tmp171_;
2515 ValaCCodeVariableDeclarator* _tmp172_;
2516 ValaCCodeDeclaration* _tmp173_;
2517 ValaCCodeFile* _tmp174_;
2518 ValaCCodeDeclaration* _tmp175_;
2519 ValaCCodeInitializerList* _tmp176_;
2520 gchar* _tmp177_;
2521 gchar* _tmp178_;
2522 gchar* _tmp179_;
2523 gchar* _tmp180_;
2524 gchar* _tmp181_;
2525 gchar* _tmp182_;
2526 ValaSignal* _tmp183_;
2527 gchar* _tmp184_;
2528 gchar* _tmp185_;
2529 gchar* _tmp186_;
2530 gchar* _tmp187_;
2531 ValaCCodeIdentifier* _tmp188_;
2532 ValaCCodeIdentifier* _tmp189_;
2533 ValaCCodeUnaryExpression* _tmp190_;
2534 ValaCCodeUnaryExpression* _tmp191_;
2535 _sig_index = _sig_index + 1;
2536 _tmp6_ = _sig_index;
2537 _tmp7_ = _sig_size;
2538 if (!(_tmp6_ < _tmp7_)) {
2539 break;
2540 }
2541 _tmp8_ = _sig_list;
2542 _tmp9_ = vala_list_get (_tmp8_, _sig_index);
2543 sig = (ValaSignal*) _tmp9_;
2544 _tmp10_ = sig;
2545 _tmp11_ = vala_symbol_get_access ((ValaSymbol*) _tmp10_);
2546 _tmp12_ = _tmp11_;
2547 if (_tmp12_ != VALA_SYMBOL_ACCESSIBILITY_PUBLIC) {
2548 _vala_code_node_unref0 (sig);
2549 continue;
2550 }
2551 _tmp13_ = sig;
2552 if (!vala_gd_bus_module_is_dbus_visible ((ValaCodeNode*) _tmp13_)) {
2553 _vala_code_node_unref0 (sig);
2554 continue;
2555 }
2556 _tmp14_ = vala_ccode_initializer_list_new ();
2557 args_info = _tmp14_;
2558 {
2559 ValaList* _param_list = NULL;
2560 ValaSignal* _tmp15_;
2561 ValaList* _tmp16_;
2562 ValaList* _tmp17_;
2563 gint _param_size = 0;
2564 ValaList* _tmp18_;
2565 gint _tmp19_;
2566 gint _tmp20_;
2567 gint _param_index = 0;
2568 _tmp15_ = sig;
2569 _tmp16_ = vala_callable_get_parameters ((ValaCallable*) _tmp15_);
2570 _tmp17_ = _vala_iterable_ref0 (_tmp16_);
2571 _param_list = _tmp17_;
2572 _tmp18_ = _param_list;
2573 _tmp19_ = vala_collection_get_size ((ValaCollection*) _tmp18_);
2574 _tmp20_ = _tmp19_;
2575 _param_size = _tmp20_;
2576 _param_index = -1;
2577 while (TRUE) {
2578 gint _tmp21_;
2579 gint _tmp22_;
2580 ValaParameter* param = NULL;
2581 ValaList* _tmp23_;
2582 gpointer _tmp24_;
2583 ValaCCodeInitializerList* info = NULL;
2584 ValaCCodeInitializerList* _tmp25_;
2585 ValaCCodeInitializerList* _tmp26_;
2586 ValaCCodeConstant* _tmp27_;
2587 ValaCCodeConstant* _tmp28_;
2588 ValaCCodeInitializerList* _tmp29_;
2589 ValaParameter* _tmp30_;
2590 const gchar* _tmp31_;
2591 const gchar* _tmp32_;
2592 gchar* _tmp33_;
2593 gchar* _tmp34_;
2594 ValaCCodeConstant* _tmp35_;
2595 ValaCCodeConstant* _tmp36_;
2596 ValaCCodeInitializerList* _tmp37_;
2597 ValaParameter* _tmp38_;
2598 ValaDataType* _tmp39_;
2599 ValaDataType* _tmp40_;
2600 ValaParameter* _tmp41_;
2601 gchar* _tmp42_;
2602 gchar* _tmp43_;
2603 gchar* _tmp44_;
2604 gchar* _tmp45_;
2605 ValaCCodeConstant* _tmp46_;
2606 ValaCCodeConstant* _tmp47_;
2607 ValaCCodeInitializerList* _tmp48_;
2608 ValaCCodeConstant* _tmp49_;
2609 ValaCCodeConstant* _tmp50_;
2610 ValaCCodeDeclaration* _cdecl_ = NULL;
2611 ValaCCodeDeclaration* _tmp51_;
2612 ValaCCodeDeclaration* _tmp52_;
2613 gchar* _tmp53_;
2614 gchar* _tmp54_;
2615 gchar* _tmp55_;
2616 gchar* _tmp56_;
2617 gchar* _tmp57_;
2618 gchar* _tmp58_;
2619 ValaSignal* _tmp59_;
2620 gchar* _tmp60_;
2621 gchar* _tmp61_;
2622 gchar* _tmp62_;
2623 gchar* _tmp63_;
2624 gchar* _tmp64_;
2625 gchar* _tmp65_;
2626 ValaParameter* _tmp66_;
2627 const gchar* _tmp67_;
2628 const gchar* _tmp68_;
2629 gchar* _tmp69_;
2630 gchar* _tmp70_;
2631 ValaCCodeInitializerList* _tmp71_;
2632 ValaCCodeVariableDeclarator* _tmp72_;
2633 ValaCCodeVariableDeclarator* _tmp73_;
2634 ValaCCodeDeclaration* _tmp74_;
2635 ValaCCodeFile* _tmp75_;
2636 ValaCCodeDeclaration* _tmp76_;
2637 ValaCCodeInitializerList* _tmp77_;
2638 gchar* _tmp78_;
2639 gchar* _tmp79_;
2640 gchar* _tmp80_;
2641 gchar* _tmp81_;
2642 gchar* _tmp82_;
2643 gchar* _tmp83_;
2644 ValaSignal* _tmp84_;
2645 gchar* _tmp85_;
2646 gchar* _tmp86_;
2647 gchar* _tmp87_;
2648 gchar* _tmp88_;
2649 gchar* _tmp89_;
2650 gchar* _tmp90_;
2651 ValaParameter* _tmp91_;
2652 const gchar* _tmp92_;
2653 const gchar* _tmp93_;
2654 gchar* _tmp94_;
2655 gchar* _tmp95_;
2656 ValaCCodeIdentifier* _tmp96_;
2657 ValaCCodeIdentifier* _tmp97_;
2658 ValaCCodeUnaryExpression* _tmp98_;
2659 ValaCCodeUnaryExpression* _tmp99_;
2660 _param_index = _param_index + 1;
2661 _tmp21_ = _param_index;
2662 _tmp22_ = _param_size;
2663 if (!(_tmp21_ < _tmp22_)) {
2664 break;
2665 }
2666 _tmp23_ = _param_list;
2667 _tmp24_ = vala_list_get (_tmp23_, _param_index);
2668 param = (ValaParameter*) _tmp24_;
2669 _tmp25_ = vala_ccode_initializer_list_new ();
2670 info = _tmp25_;
2671 _tmp26_ = info;
2672 _tmp27_ = vala_ccode_constant_new ("-1");
2673 _tmp28_ = _tmp27_;
2674 vala_ccode_initializer_list_append (_tmp26_, (ValaCCodeExpression*) _tmp28_);
2675 _vala_ccode_node_unref0 (_tmp28_);
2676 _tmp29_ = info;
2677 _tmp30_ = param;
2678 _tmp31_ = vala_symbol_get_name ((ValaSymbol*) _tmp30_);
2679 _tmp32_ = _tmp31_;
2680 _tmp33_ = g_strdup_printf ("\"%s\"", _tmp32_);
2681 _tmp34_ = _tmp33_;
2682 _tmp35_ = vala_ccode_constant_new (_tmp34_);
2683 _tmp36_ = _tmp35_;
2684 vala_ccode_initializer_list_append (_tmp29_, (ValaCCodeExpression*) _tmp36_);
2685 _vala_ccode_node_unref0 (_tmp36_);
2686 _g_free0 (_tmp34_);
2687 _tmp37_ = info;
2688 _tmp38_ = param;
2689 _tmp39_ = vala_variable_get_variable_type ((ValaVariable*) _tmp38_);
2690 _tmp40_ = _tmp39_;
2691 _tmp41_ = param;
2692 _tmp42_ = vala_data_type_get_type_signature (_tmp40_, (ValaSymbol*) _tmp41_);
2693 _tmp43_ = _tmp42_;
2694 _tmp44_ = g_strdup_printf ("\"%s\"", _tmp43_);
2695 _tmp45_ = _tmp44_;
2696 _tmp46_ = vala_ccode_constant_new (_tmp45_);
2697 _tmp47_ = _tmp46_;
2698 vala_ccode_initializer_list_append (_tmp37_, (ValaCCodeExpression*) _tmp47_);
2699 _vala_ccode_node_unref0 (_tmp47_);
2700 _g_free0 (_tmp45_);
2701 _g_free0 (_tmp43_);
2702 _tmp48_ = info;
2703 _tmp49_ = vala_ccode_constant_new ("NULL");
2704 _tmp50_ = _tmp49_;
2705 vala_ccode_initializer_list_append (_tmp48_, (ValaCCodeExpression*) _tmp50_);
2706 _vala_ccode_node_unref0 (_tmp50_);
2707 _tmp51_ = vala_ccode_declaration_new ("const GDBusArgInfo");
2708 _cdecl_ = _tmp51_;
2709 _tmp52_ = _cdecl_;
2710 _tmp53_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
2711 _tmp54_ = _tmp53_;
2712 _tmp55_ = g_strconcat ("_", _tmp54_, NULL);
2713 _tmp56_ = _tmp55_;
2714 _tmp57_ = g_strconcat (_tmp56_, "dbus_arg_info_", NULL);
2715 _tmp58_ = _tmp57_;
2716 _tmp59_ = sig;
2717 _tmp60_ = vala_get_ccode_lower_case_name ((ValaCodeNode*) _tmp59_, NULL);
2718 _tmp61_ = _tmp60_;
2719 _tmp62_ = g_strconcat (_tmp58_, _tmp61_, NULL);
2720 _tmp63_ = _tmp62_;
2721 _tmp64_ = g_strconcat (_tmp63_, "_", NULL);
2722 _tmp65_ = _tmp64_;
2723 _tmp66_ = param;
2724 _tmp67_ = vala_symbol_get_name ((ValaSymbol*) _tmp66_);
2725 _tmp68_ = _tmp67_;
2726 _tmp69_ = g_strconcat (_tmp65_, _tmp68_, NULL);
2727 _tmp70_ = _tmp69_;
2728 _tmp71_ = info;
2729 _tmp72_ = vala_ccode_variable_declarator_new (_tmp70_, (ValaCCodeExpression*) _tmp71_, NULL);
2730 _tmp73_ = _tmp72_;
2731 vala_ccode_declaration_add_declarator (_tmp52_, (ValaCCodeDeclarator*) _tmp73_);
2732 _vala_ccode_node_unref0 (_tmp73_);
2733 _g_free0 (_tmp70_);
2734 _g_free0 (_tmp65_);
2735 _g_free0 (_tmp63_);
2736 _g_free0 (_tmp61_);
2737 _g_free0 (_tmp58_);
2738 _g_free0 (_tmp56_);
2739 _g_free0 (_tmp54_);
2740 _tmp74_ = _cdecl_;
2741 vala_ccode_node_set_modifiers ((ValaCCodeNode*) _tmp74_, VALA_CCODE_MODIFIERS_STATIC);
2742 _tmp75_ = ((ValaCCodeBaseModule*) self)->cfile;
2743 _tmp76_ = _cdecl_;
2744 vala_ccode_file_add_constant_declaration (_tmp75_, (ValaCCodeNode*) _tmp76_);
2745 _tmp77_ = args_info;
2746 _tmp78_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
2747 _tmp79_ = _tmp78_;
2748 _tmp80_ = g_strconcat ("_", _tmp79_, NULL);
2749 _tmp81_ = _tmp80_;
2750 _tmp82_ = g_strconcat (_tmp81_, "dbus_arg_info_", NULL);
2751 _tmp83_ = _tmp82_;
2752 _tmp84_ = sig;
2753 _tmp85_ = vala_get_ccode_lower_case_name ((ValaCodeNode*) _tmp84_, NULL);
2754 _tmp86_ = _tmp85_;
2755 _tmp87_ = g_strconcat (_tmp83_, _tmp86_, NULL);
2756 _tmp88_ = _tmp87_;
2757 _tmp89_ = g_strconcat (_tmp88_, "_", NULL);
2758 _tmp90_ = _tmp89_;
2759 _tmp91_ = param;
2760 _tmp92_ = vala_symbol_get_name ((ValaSymbol*) _tmp91_);
2761 _tmp93_ = _tmp92_;
2762 _tmp94_ = g_strconcat (_tmp90_, _tmp93_, NULL);
2763 _tmp95_ = _tmp94_;
2764 _tmp96_ = vala_ccode_identifier_new (_tmp95_);
2765 _tmp97_ = _tmp96_;
2766 _tmp98_ = vala_ccode_unary_expression_new (VALA_CCODE_UNARY_OPERATOR_ADDRESS_OF, (ValaCCodeExpression*) _tmp97_);
2767 _tmp99_ = _tmp98_;
2768 vala_ccode_initializer_list_append (_tmp77_, (ValaCCodeExpression*) _tmp99_);
2769 _vala_ccode_node_unref0 (_tmp99_);
2770 _vala_ccode_node_unref0 (_tmp97_);
2771 _g_free0 (_tmp95_);
2772 _g_free0 (_tmp90_);
2773 _g_free0 (_tmp88_);
2774 _g_free0 (_tmp86_);
2775 _g_free0 (_tmp83_);
2776 _g_free0 (_tmp81_);
2777 _g_free0 (_tmp79_);
2778 _vala_ccode_node_unref0 (_cdecl_);
2779 _vala_ccode_node_unref0 (info);
2780 _vala_code_node_unref0 (param);
2781 }
2782 _vala_iterable_unref0 (_param_list);
2783 }
2784 _tmp100_ = args_info;
2785 _tmp101_ = vala_ccode_constant_new ("NULL");
2786 _tmp102_ = _tmp101_;
2787 vala_ccode_initializer_list_append (_tmp100_, (ValaCCodeExpression*) _tmp102_);
2788 _vala_ccode_node_unref0 (_tmp102_);
2789 _tmp103_ = vala_ccode_declaration_new ("const GDBusArgInfo * const");
2790 _cdecl_ = _tmp103_;
2791 _tmp104_ = _cdecl_;
2792 _tmp105_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
2793 _tmp106_ = _tmp105_;
2794 _tmp107_ = g_strconcat ("_", _tmp106_, NULL);
2795 _tmp108_ = _tmp107_;
2796 _tmp109_ = g_strconcat (_tmp108_, "dbus_arg_info_", NULL);
2797 _tmp110_ = _tmp109_;
2798 _tmp111_ = sig;
2799 _tmp112_ = vala_get_ccode_lower_case_name ((ValaCodeNode*) _tmp111_, NULL);
2800 _tmp113_ = _tmp112_;
2801 _tmp114_ = g_strconcat (_tmp110_, _tmp113_, NULL);
2802 _tmp115_ = _tmp114_;
2803 _tmp116_ = g_strconcat (_tmp115_, "[]", NULL);
2804 _tmp117_ = _tmp116_;
2805 _tmp118_ = args_info;
2806 _tmp119_ = vala_ccode_variable_declarator_new (_tmp117_, (ValaCCodeExpression*) _tmp118_, NULL);
2807 _tmp120_ = _tmp119_;
2808 vala_ccode_declaration_add_declarator (_tmp104_, (ValaCCodeDeclarator*) _tmp120_);
2809 _vala_ccode_node_unref0 (_tmp120_);
2810 _g_free0 (_tmp117_);
2811 _g_free0 (_tmp115_);
2812 _g_free0 (_tmp113_);
2813 _g_free0 (_tmp110_);
2814 _g_free0 (_tmp108_);
2815 _g_free0 (_tmp106_);
2816 _tmp121_ = _cdecl_;
2817 vala_ccode_node_set_modifiers ((ValaCCodeNode*) _tmp121_, VALA_CCODE_MODIFIERS_STATIC);
2818 _tmp122_ = ((ValaCCodeBaseModule*) self)->cfile;
2819 _tmp123_ = _cdecl_;
2820 vala_ccode_file_add_constant_declaration (_tmp122_, (ValaCCodeNode*) _tmp123_);
2821 _tmp124_ = vala_ccode_initializer_list_new ();
2822 info = _tmp124_;
2823 _tmp125_ = info;
2824 _tmp126_ = vala_ccode_constant_new ("-1");
2825 _tmp127_ = _tmp126_;
2826 vala_ccode_initializer_list_append (_tmp125_, (ValaCCodeExpression*) _tmp127_);
2827 _vala_ccode_node_unref0 (_tmp127_);
2828 _tmp128_ = info;
2829 _tmp129_ = sig;
2830 _tmp130_ = vala_gd_bus_module_get_dbus_name_for_member ((ValaSymbol*) _tmp129_);
2831 _tmp131_ = _tmp130_;
2832 _tmp132_ = g_strdup_printf ("\"%s\"", _tmp131_);
2833 _tmp133_ = _tmp132_;
2834 _tmp134_ = vala_ccode_constant_new (_tmp133_);
2835 _tmp135_ = _tmp134_;
2836 vala_ccode_initializer_list_append (_tmp128_, (ValaCCodeExpression*) _tmp135_);
2837 _vala_ccode_node_unref0 (_tmp135_);
2838 _g_free0 (_tmp133_);
2839 _g_free0 (_tmp131_);
2840 _tmp136_ = info;
2841 _tmp137_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
2842 _tmp138_ = _tmp137_;
2843 _tmp139_ = g_strconcat ("_", _tmp138_, NULL);
2844 _tmp140_ = _tmp139_;
2845 _tmp141_ = g_strconcat (_tmp140_, "dbus_arg_info_", NULL);
2846 _tmp142_ = _tmp141_;
2847 _tmp143_ = sig;
2848 _tmp144_ = vala_get_ccode_lower_case_name ((ValaCodeNode*) _tmp143_, NULL);
2849 _tmp145_ = _tmp144_;
2850 _tmp146_ = g_strconcat (_tmp142_, _tmp145_, NULL);
2851 _tmp147_ = _tmp146_;
2852 _tmp148_ = vala_ccode_identifier_new (_tmp147_);
2853 _tmp149_ = _tmp148_;
2854 _tmp150_ = vala_ccode_unary_expression_new (VALA_CCODE_UNARY_OPERATOR_ADDRESS_OF, (ValaCCodeExpression*) _tmp149_);
2855 _tmp151_ = _tmp150_;
2856 _tmp152_ = vala_ccode_cast_expression_new ((ValaCCodeExpression*) _tmp151_, "GDBusArgInfo **");
2857 _tmp153_ = _tmp152_;
2858 vala_ccode_initializer_list_append (_tmp136_, (ValaCCodeExpression*) _tmp153_);
2859 _vala_ccode_node_unref0 (_tmp153_);
2860 _vala_ccode_node_unref0 (_tmp151_);
2861 _vala_ccode_node_unref0 (_tmp149_);
2862 _g_free0 (_tmp147_);
2863 _g_free0 (_tmp145_);
2864 _g_free0 (_tmp142_);
2865 _g_free0 (_tmp140_);
2866 _g_free0 (_tmp138_);
2867 _tmp154_ = info;
2868 _tmp155_ = vala_ccode_constant_new ("NULL");
2869 _tmp156_ = _tmp155_;
2870 vala_ccode_initializer_list_append (_tmp154_, (ValaCCodeExpression*) _tmp156_);
2871 _vala_ccode_node_unref0 (_tmp156_);
2872 _tmp157_ = vala_ccode_declaration_new ("const GDBusSignalInfo");
2873 _vala_ccode_node_unref0 (_cdecl_);
2874 _cdecl_ = _tmp157_;
2875 _tmp158_ = _cdecl_;
2876 _tmp159_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
2877 _tmp160_ = _tmp159_;
2878 _tmp161_ = g_strconcat ("_", _tmp160_, NULL);
2879 _tmp162_ = _tmp161_;
2880 _tmp163_ = g_strconcat (_tmp162_, "dbus_signal_info_", NULL);
2881 _tmp164_ = _tmp163_;
2882 _tmp165_ = sig;
2883 _tmp166_ = vala_get_ccode_lower_case_name ((ValaCodeNode*) _tmp165_, NULL);
2884 _tmp167_ = _tmp166_;
2885 _tmp168_ = g_strconcat (_tmp164_, _tmp167_, NULL);
2886 _tmp169_ = _tmp168_;
2887 _tmp170_ = info;
2888 _tmp171_ = vala_ccode_variable_declarator_new (_tmp169_, (ValaCCodeExpression*) _tmp170_, NULL);
2889 _tmp172_ = _tmp171_;
2890 vala_ccode_declaration_add_declarator (_tmp158_, (ValaCCodeDeclarator*) _tmp172_);
2891 _vala_ccode_node_unref0 (_tmp172_);
2892 _g_free0 (_tmp169_);
2893 _g_free0 (_tmp167_);
2894 _g_free0 (_tmp164_);
2895 _g_free0 (_tmp162_);
2896 _g_free0 (_tmp160_);
2897 _tmp173_ = _cdecl_;
2898 vala_ccode_node_set_modifiers ((ValaCCodeNode*) _tmp173_, VALA_CCODE_MODIFIERS_STATIC);
2899 _tmp174_ = ((ValaCCodeBaseModule*) self)->cfile;
2900 _tmp175_ = _cdecl_;
2901 vala_ccode_file_add_constant_declaration (_tmp174_, (ValaCCodeNode*) _tmp175_);
2902 _tmp176_ = infos;
2903 _tmp177_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
2904 _tmp178_ = _tmp177_;
2905 _tmp179_ = g_strconcat ("_", _tmp178_, NULL);
2906 _tmp180_ = _tmp179_;
2907 _tmp181_ = g_strconcat (_tmp180_, "dbus_signal_info_", NULL);
2908 _tmp182_ = _tmp181_;
2909 _tmp183_ = sig;
2910 _tmp184_ = vala_get_ccode_lower_case_name ((ValaCodeNode*) _tmp183_, NULL);
2911 _tmp185_ = _tmp184_;
2912 _tmp186_ = g_strconcat (_tmp182_, _tmp185_, NULL);
2913 _tmp187_ = _tmp186_;
2914 _tmp188_ = vala_ccode_identifier_new (_tmp187_);
2915 _tmp189_ = _tmp188_;
2916 _tmp190_ = vala_ccode_unary_expression_new (VALA_CCODE_UNARY_OPERATOR_ADDRESS_OF, (ValaCCodeExpression*) _tmp189_);
2917 _tmp191_ = _tmp190_;
2918 vala_ccode_initializer_list_append (_tmp176_, (ValaCCodeExpression*) _tmp191_);
2919 _vala_ccode_node_unref0 (_tmp191_);
2920 _vala_ccode_node_unref0 (_tmp189_);
2921 _g_free0 (_tmp187_);
2922 _g_free0 (_tmp185_);
2923 _g_free0 (_tmp182_);
2924 _g_free0 (_tmp180_);
2925 _g_free0 (_tmp178_);
2926 _vala_ccode_node_unref0 (info);
2927 _vala_ccode_node_unref0 (_cdecl_);
2928 _vala_ccode_node_unref0 (args_info);
2929 _vala_code_node_unref0 (sig);
2930 }
2931 _vala_iterable_unref0 (_sig_list);
2932 }
2933 _tmp192_ = infos;
2934 _tmp193_ = vala_ccode_constant_new ("NULL");
2935 _tmp194_ = _tmp193_;
2936 vala_ccode_initializer_list_append (_tmp192_, (ValaCCodeExpression*) _tmp194_);
2937 _vala_ccode_node_unref0 (_tmp194_);
2938 _tmp195_ = vala_ccode_declaration_new ("const GDBusSignalInfo * const");
2939 _cdecl_ = _tmp195_;
2940 _tmp196_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
2941 _tmp197_ = _tmp196_;
2942 _tmp198_ = g_strconcat ("_", _tmp197_, NULL);
2943 _tmp199_ = _tmp198_;
2944 _tmp200_ = g_strconcat (_tmp199_, "dbus_signal_info[]", NULL);
2945 _tmp201_ = _tmp200_;
2946 _tmp202_ = infos;
2947 _tmp203_ = vala_ccode_variable_declarator_new (_tmp201_, (ValaCCodeExpression*) _tmp202_, NULL);
2948 _tmp204_ = _tmp203_;
2949 vala_ccode_declaration_add_declarator (_cdecl_, (ValaCCodeDeclarator*) _tmp204_);
2950 _vala_ccode_node_unref0 (_tmp204_);
2951 _g_free0 (_tmp201_);
2952 _g_free0 (_tmp199_);
2953 _g_free0 (_tmp197_);
2954 vala_ccode_node_set_modifiers ((ValaCCodeNode*) _cdecl_, VALA_CCODE_MODIFIERS_STATIC);
2955 _tmp205_ = ((ValaCCodeBaseModule*) self)->cfile;
2956 vala_ccode_file_add_constant_declaration (_tmp205_, (ValaCCodeNode*) _cdecl_);
2957 _tmp206_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
2958 _tmp207_ = _tmp206_;
2959 _tmp208_ = g_strconcat ("_", _tmp207_, NULL);
2960 _tmp209_ = _tmp208_;
2961 _tmp210_ = g_strconcat (_tmp209_, "dbus_signal_info", NULL);
2962 _tmp211_ = _tmp210_;
2963 _tmp212_ = vala_ccode_identifier_new (_tmp211_);
2964 _tmp213_ = (ValaCCodeExpression*) _tmp212_;
2965 _g_free0 (_tmp211_);
2966 _g_free0 (_tmp209_);
2967 _g_free0 (_tmp207_);
2968 result = _tmp213_;
2969 _vala_ccode_node_unref0 (_cdecl_);
2970 _vala_ccode_node_unref0 (infos);
2971 return result;
2972 }
2973
2974 static ValaCCodeExpression*
vala_gd_bus_module_get_property_info(ValaGDBusModule * self,ValaObjectTypeSymbol * sym)2975 vala_gd_bus_module_get_property_info (ValaGDBusModule* self,
2976 ValaObjectTypeSymbol* sym)
2977 {
2978 ValaCCodeInitializerList* infos = NULL;
2979 ValaCCodeInitializerList* _tmp0_;
2980 ValaCCodeInitializerList* _tmp108_;
2981 ValaCCodeConstant* _tmp109_;
2982 ValaCCodeConstant* _tmp110_;
2983 ValaCCodeDeclaration* _cdecl_ = NULL;
2984 ValaCCodeDeclaration* _tmp111_;
2985 gchar* _tmp112_;
2986 gchar* _tmp113_;
2987 gchar* _tmp114_;
2988 gchar* _tmp115_;
2989 gchar* _tmp116_;
2990 gchar* _tmp117_;
2991 ValaCCodeInitializerList* _tmp118_;
2992 ValaCCodeVariableDeclarator* _tmp119_;
2993 ValaCCodeVariableDeclarator* _tmp120_;
2994 ValaCCodeFile* _tmp121_;
2995 gchar* _tmp122_;
2996 gchar* _tmp123_;
2997 gchar* _tmp124_;
2998 gchar* _tmp125_;
2999 gchar* _tmp126_;
3000 gchar* _tmp127_;
3001 ValaCCodeIdentifier* _tmp128_;
3002 ValaCCodeExpression* _tmp129_;
3003 ValaCCodeExpression* result = NULL;
3004 g_return_val_if_fail (self != NULL, NULL);
3005 g_return_val_if_fail (sym != NULL, NULL);
3006 _tmp0_ = vala_ccode_initializer_list_new ();
3007 infos = _tmp0_;
3008 {
3009 ValaList* _prop_list = NULL;
3010 ValaList* _tmp1_;
3011 ValaList* _tmp2_;
3012 gint _prop_size = 0;
3013 ValaList* _tmp3_;
3014 gint _tmp4_;
3015 gint _tmp5_;
3016 gint _prop_index = 0;
3017 _tmp1_ = vala_object_type_symbol_get_properties (sym);
3018 _tmp2_ = _vala_iterable_ref0 (_tmp1_);
3019 _prop_list = _tmp2_;
3020 _tmp3_ = _prop_list;
3021 _tmp4_ = vala_collection_get_size ((ValaCollection*) _tmp3_);
3022 _tmp5_ = _tmp4_;
3023 _prop_size = _tmp5_;
3024 _prop_index = -1;
3025 while (TRUE) {
3026 gint _tmp6_;
3027 gint _tmp7_;
3028 ValaProperty* prop = NULL;
3029 ValaList* _tmp8_;
3030 gpointer _tmp9_;
3031 gboolean _tmp10_ = FALSE;
3032 gboolean _tmp11_ = FALSE;
3033 ValaProperty* _tmp12_;
3034 ValaMemberBinding _tmp13_;
3035 ValaMemberBinding _tmp14_;
3036 ValaProperty* _tmp21_;
3037 ValaCCodeInitializerList* info = NULL;
3038 ValaCCodeInitializerList* _tmp22_;
3039 ValaCCodeInitializerList* _tmp23_;
3040 ValaCCodeConstant* _tmp24_;
3041 ValaCCodeConstant* _tmp25_;
3042 ValaCCodeInitializerList* _tmp26_;
3043 ValaProperty* _tmp27_;
3044 gchar* _tmp28_;
3045 gchar* _tmp29_;
3046 gchar* _tmp30_;
3047 gchar* _tmp31_;
3048 ValaCCodeConstant* _tmp32_;
3049 ValaCCodeConstant* _tmp33_;
3050 ValaCCodeInitializerList* _tmp34_;
3051 ValaProperty* _tmp35_;
3052 ValaDataType* _tmp36_;
3053 ValaDataType* _tmp37_;
3054 ValaProperty* _tmp38_;
3055 gchar* _tmp39_;
3056 gchar* _tmp40_;
3057 gchar* _tmp41_;
3058 gchar* _tmp42_;
3059 ValaCCodeConstant* _tmp43_;
3060 ValaCCodeConstant* _tmp44_;
3061 gboolean _tmp45_ = FALSE;
3062 ValaProperty* _tmp46_;
3063 ValaPropertyAccessor* _tmp47_;
3064 ValaPropertyAccessor* _tmp48_;
3065 ValaCCodeInitializerList* _tmp70_;
3066 ValaCCodeConstant* _tmp71_;
3067 ValaCCodeConstant* _tmp72_;
3068 ValaCCodeDeclaration* _cdecl_ = NULL;
3069 ValaCCodeDeclaration* _tmp73_;
3070 ValaCCodeDeclaration* _tmp74_;
3071 gchar* _tmp75_;
3072 gchar* _tmp76_;
3073 gchar* _tmp77_;
3074 gchar* _tmp78_;
3075 gchar* _tmp79_;
3076 gchar* _tmp80_;
3077 ValaProperty* _tmp81_;
3078 const gchar* _tmp82_;
3079 const gchar* _tmp83_;
3080 gchar* _tmp84_;
3081 gchar* _tmp85_;
3082 ValaCCodeInitializerList* _tmp86_;
3083 ValaCCodeVariableDeclarator* _tmp87_;
3084 ValaCCodeVariableDeclarator* _tmp88_;
3085 ValaCCodeDeclaration* _tmp89_;
3086 ValaCCodeFile* _tmp90_;
3087 ValaCCodeDeclaration* _tmp91_;
3088 ValaCCodeInitializerList* _tmp92_;
3089 gchar* _tmp93_;
3090 gchar* _tmp94_;
3091 gchar* _tmp95_;
3092 gchar* _tmp96_;
3093 gchar* _tmp97_;
3094 gchar* _tmp98_;
3095 ValaProperty* _tmp99_;
3096 const gchar* _tmp100_;
3097 const gchar* _tmp101_;
3098 gchar* _tmp102_;
3099 gchar* _tmp103_;
3100 ValaCCodeIdentifier* _tmp104_;
3101 ValaCCodeIdentifier* _tmp105_;
3102 ValaCCodeUnaryExpression* _tmp106_;
3103 ValaCCodeUnaryExpression* _tmp107_;
3104 _prop_index = _prop_index + 1;
3105 _tmp6_ = _prop_index;
3106 _tmp7_ = _prop_size;
3107 if (!(_tmp6_ < _tmp7_)) {
3108 break;
3109 }
3110 _tmp8_ = _prop_list;
3111 _tmp9_ = vala_list_get (_tmp8_, _prop_index);
3112 prop = (ValaProperty*) _tmp9_;
3113 _tmp12_ = prop;
3114 _tmp13_ = vala_property_get_binding (_tmp12_);
3115 _tmp14_ = _tmp13_;
3116 if (_tmp14_ != VALA_MEMBER_BINDING_INSTANCE) {
3117 _tmp11_ = TRUE;
3118 } else {
3119 ValaProperty* _tmp15_;
3120 gboolean _tmp16_;
3121 gboolean _tmp17_;
3122 _tmp15_ = prop;
3123 _tmp16_ = vala_property_get_overrides (_tmp15_);
3124 _tmp17_ = _tmp16_;
3125 _tmp11_ = _tmp17_;
3126 }
3127 if (_tmp11_) {
3128 _tmp10_ = TRUE;
3129 } else {
3130 ValaProperty* _tmp18_;
3131 ValaSymbolAccessibility _tmp19_;
3132 ValaSymbolAccessibility _tmp20_;
3133 _tmp18_ = prop;
3134 _tmp19_ = vala_symbol_get_access ((ValaSymbol*) _tmp18_);
3135 _tmp20_ = _tmp19_;
3136 _tmp10_ = _tmp20_ != VALA_SYMBOL_ACCESSIBILITY_PUBLIC;
3137 }
3138 if (_tmp10_) {
3139 _vala_code_node_unref0 (prop);
3140 continue;
3141 }
3142 _tmp21_ = prop;
3143 if (!vala_gd_bus_module_is_dbus_visible ((ValaCodeNode*) _tmp21_)) {
3144 _vala_code_node_unref0 (prop);
3145 continue;
3146 }
3147 _tmp22_ = vala_ccode_initializer_list_new ();
3148 info = _tmp22_;
3149 _tmp23_ = info;
3150 _tmp24_ = vala_ccode_constant_new ("-1");
3151 _tmp25_ = _tmp24_;
3152 vala_ccode_initializer_list_append (_tmp23_, (ValaCCodeExpression*) _tmp25_);
3153 _vala_ccode_node_unref0 (_tmp25_);
3154 _tmp26_ = info;
3155 _tmp27_ = prop;
3156 _tmp28_ = vala_gd_bus_module_get_dbus_name_for_member ((ValaSymbol*) _tmp27_);
3157 _tmp29_ = _tmp28_;
3158 _tmp30_ = g_strdup_printf ("\"%s\"", _tmp29_);
3159 _tmp31_ = _tmp30_;
3160 _tmp32_ = vala_ccode_constant_new (_tmp31_);
3161 _tmp33_ = _tmp32_;
3162 vala_ccode_initializer_list_append (_tmp26_, (ValaCCodeExpression*) _tmp33_);
3163 _vala_ccode_node_unref0 (_tmp33_);
3164 _g_free0 (_tmp31_);
3165 _g_free0 (_tmp29_);
3166 _tmp34_ = info;
3167 _tmp35_ = prop;
3168 _tmp36_ = vala_property_get_property_type (_tmp35_);
3169 _tmp37_ = _tmp36_;
3170 _tmp38_ = prop;
3171 _tmp39_ = vala_data_type_get_type_signature (_tmp37_, (ValaSymbol*) _tmp38_);
3172 _tmp40_ = _tmp39_;
3173 _tmp41_ = g_strdup_printf ("\"%s\"", _tmp40_);
3174 _tmp42_ = _tmp41_;
3175 _tmp43_ = vala_ccode_constant_new (_tmp42_);
3176 _tmp44_ = _tmp43_;
3177 vala_ccode_initializer_list_append (_tmp34_, (ValaCCodeExpression*) _tmp44_);
3178 _vala_ccode_node_unref0 (_tmp44_);
3179 _g_free0 (_tmp42_);
3180 _g_free0 (_tmp40_);
3181 _tmp46_ = prop;
3182 _tmp47_ = vala_property_get_get_accessor (_tmp46_);
3183 _tmp48_ = _tmp47_;
3184 if (_tmp48_ != NULL) {
3185 ValaProperty* _tmp49_;
3186 ValaPropertyAccessor* _tmp50_;
3187 ValaPropertyAccessor* _tmp51_;
3188 _tmp49_ = prop;
3189 _tmp50_ = vala_property_get_set_accessor (_tmp49_);
3190 _tmp51_ = _tmp50_;
3191 _tmp45_ = _tmp51_ != NULL;
3192 } else {
3193 _tmp45_ = FALSE;
3194 }
3195 if (_tmp45_) {
3196 ValaCCodeInitializerList* _tmp52_;
3197 ValaCCodeConstant* _tmp53_;
3198 ValaCCodeConstant* _tmp54_;
3199 _tmp52_ = info;
3200 _tmp53_ = vala_ccode_constant_new ("G_DBUS_PROPERTY_INFO_FLAGS_READABLE | G_DBUS_PROPERTY_INFO_FLAGS_WRITA" \
3201 "BLE");
3202 _tmp54_ = _tmp53_;
3203 vala_ccode_initializer_list_append (_tmp52_, (ValaCCodeExpression*) _tmp54_);
3204 _vala_ccode_node_unref0 (_tmp54_);
3205 } else {
3206 ValaProperty* _tmp55_;
3207 ValaPropertyAccessor* _tmp56_;
3208 ValaPropertyAccessor* _tmp57_;
3209 _tmp55_ = prop;
3210 _tmp56_ = vala_property_get_get_accessor (_tmp55_);
3211 _tmp57_ = _tmp56_;
3212 if (_tmp57_ != NULL) {
3213 ValaCCodeInitializerList* _tmp58_;
3214 ValaCCodeConstant* _tmp59_;
3215 ValaCCodeConstant* _tmp60_;
3216 _tmp58_ = info;
3217 _tmp59_ = vala_ccode_constant_new ("G_DBUS_PROPERTY_INFO_FLAGS_READABLE");
3218 _tmp60_ = _tmp59_;
3219 vala_ccode_initializer_list_append (_tmp58_, (ValaCCodeExpression*) _tmp60_);
3220 _vala_ccode_node_unref0 (_tmp60_);
3221 } else {
3222 ValaProperty* _tmp61_;
3223 ValaPropertyAccessor* _tmp62_;
3224 ValaPropertyAccessor* _tmp63_;
3225 _tmp61_ = prop;
3226 _tmp62_ = vala_property_get_set_accessor (_tmp61_);
3227 _tmp63_ = _tmp62_;
3228 if (_tmp63_ != NULL) {
3229 ValaCCodeInitializerList* _tmp64_;
3230 ValaCCodeConstant* _tmp65_;
3231 ValaCCodeConstant* _tmp66_;
3232 _tmp64_ = info;
3233 _tmp65_ = vala_ccode_constant_new ("G_DBUS_PROPERTY_INFO_FLAGS_WRITABLE");
3234 _tmp66_ = _tmp65_;
3235 vala_ccode_initializer_list_append (_tmp64_, (ValaCCodeExpression*) _tmp66_);
3236 _vala_ccode_node_unref0 (_tmp66_);
3237 } else {
3238 ValaCCodeInitializerList* _tmp67_;
3239 ValaCCodeConstant* _tmp68_;
3240 ValaCCodeConstant* _tmp69_;
3241 _tmp67_ = info;
3242 _tmp68_ = vala_ccode_constant_new ("G_DBUS_PROPERTY_INFO_FLAGS_NONE");
3243 _tmp69_ = _tmp68_;
3244 vala_ccode_initializer_list_append (_tmp67_, (ValaCCodeExpression*) _tmp69_);
3245 _vala_ccode_node_unref0 (_tmp69_);
3246 }
3247 }
3248 }
3249 _tmp70_ = info;
3250 _tmp71_ = vala_ccode_constant_new ("NULL");
3251 _tmp72_ = _tmp71_;
3252 vala_ccode_initializer_list_append (_tmp70_, (ValaCCodeExpression*) _tmp72_);
3253 _vala_ccode_node_unref0 (_tmp72_);
3254 _tmp73_ = vala_ccode_declaration_new ("const GDBusPropertyInfo");
3255 _cdecl_ = _tmp73_;
3256 _tmp74_ = _cdecl_;
3257 _tmp75_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
3258 _tmp76_ = _tmp75_;
3259 _tmp77_ = g_strconcat ("_", _tmp76_, NULL);
3260 _tmp78_ = _tmp77_;
3261 _tmp79_ = g_strconcat (_tmp78_, "dbus_property_info_", NULL);
3262 _tmp80_ = _tmp79_;
3263 _tmp81_ = prop;
3264 _tmp82_ = vala_symbol_get_name ((ValaSymbol*) _tmp81_);
3265 _tmp83_ = _tmp82_;
3266 _tmp84_ = g_strconcat (_tmp80_, _tmp83_, NULL);
3267 _tmp85_ = _tmp84_;
3268 _tmp86_ = info;
3269 _tmp87_ = vala_ccode_variable_declarator_new (_tmp85_, (ValaCCodeExpression*) _tmp86_, NULL);
3270 _tmp88_ = _tmp87_;
3271 vala_ccode_declaration_add_declarator (_tmp74_, (ValaCCodeDeclarator*) _tmp88_);
3272 _vala_ccode_node_unref0 (_tmp88_);
3273 _g_free0 (_tmp85_);
3274 _g_free0 (_tmp80_);
3275 _g_free0 (_tmp78_);
3276 _g_free0 (_tmp76_);
3277 _tmp89_ = _cdecl_;
3278 vala_ccode_node_set_modifiers ((ValaCCodeNode*) _tmp89_, VALA_CCODE_MODIFIERS_STATIC);
3279 _tmp90_ = ((ValaCCodeBaseModule*) self)->cfile;
3280 _tmp91_ = _cdecl_;
3281 vala_ccode_file_add_constant_declaration (_tmp90_, (ValaCCodeNode*) _tmp91_);
3282 _tmp92_ = infos;
3283 _tmp93_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
3284 _tmp94_ = _tmp93_;
3285 _tmp95_ = g_strconcat ("_", _tmp94_, NULL);
3286 _tmp96_ = _tmp95_;
3287 _tmp97_ = g_strconcat (_tmp96_, "dbus_property_info_", NULL);
3288 _tmp98_ = _tmp97_;
3289 _tmp99_ = prop;
3290 _tmp100_ = vala_symbol_get_name ((ValaSymbol*) _tmp99_);
3291 _tmp101_ = _tmp100_;
3292 _tmp102_ = g_strconcat (_tmp98_, _tmp101_, NULL);
3293 _tmp103_ = _tmp102_;
3294 _tmp104_ = vala_ccode_identifier_new (_tmp103_);
3295 _tmp105_ = _tmp104_;
3296 _tmp106_ = vala_ccode_unary_expression_new (VALA_CCODE_UNARY_OPERATOR_ADDRESS_OF, (ValaCCodeExpression*) _tmp105_);
3297 _tmp107_ = _tmp106_;
3298 vala_ccode_initializer_list_append (_tmp92_, (ValaCCodeExpression*) _tmp107_);
3299 _vala_ccode_node_unref0 (_tmp107_);
3300 _vala_ccode_node_unref0 (_tmp105_);
3301 _g_free0 (_tmp103_);
3302 _g_free0 (_tmp98_);
3303 _g_free0 (_tmp96_);
3304 _g_free0 (_tmp94_);
3305 _vala_ccode_node_unref0 (_cdecl_);
3306 _vala_ccode_node_unref0 (info);
3307 _vala_code_node_unref0 (prop);
3308 }
3309 _vala_iterable_unref0 (_prop_list);
3310 }
3311 _tmp108_ = infos;
3312 _tmp109_ = vala_ccode_constant_new ("NULL");
3313 _tmp110_ = _tmp109_;
3314 vala_ccode_initializer_list_append (_tmp108_, (ValaCCodeExpression*) _tmp110_);
3315 _vala_ccode_node_unref0 (_tmp110_);
3316 _tmp111_ = vala_ccode_declaration_new ("const GDBusPropertyInfo * const");
3317 _cdecl_ = _tmp111_;
3318 _tmp112_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
3319 _tmp113_ = _tmp112_;
3320 _tmp114_ = g_strconcat ("_", _tmp113_, NULL);
3321 _tmp115_ = _tmp114_;
3322 _tmp116_ = g_strconcat (_tmp115_, "dbus_property_info[]", NULL);
3323 _tmp117_ = _tmp116_;
3324 _tmp118_ = infos;
3325 _tmp119_ = vala_ccode_variable_declarator_new (_tmp117_, (ValaCCodeExpression*) _tmp118_, NULL);
3326 _tmp120_ = _tmp119_;
3327 vala_ccode_declaration_add_declarator (_cdecl_, (ValaCCodeDeclarator*) _tmp120_);
3328 _vala_ccode_node_unref0 (_tmp120_);
3329 _g_free0 (_tmp117_);
3330 _g_free0 (_tmp115_);
3331 _g_free0 (_tmp113_);
3332 vala_ccode_node_set_modifiers ((ValaCCodeNode*) _cdecl_, VALA_CCODE_MODIFIERS_STATIC);
3333 _tmp121_ = ((ValaCCodeBaseModule*) self)->cfile;
3334 vala_ccode_file_add_constant_declaration (_tmp121_, (ValaCCodeNode*) _cdecl_);
3335 _tmp122_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
3336 _tmp123_ = _tmp122_;
3337 _tmp124_ = g_strconcat ("_", _tmp123_, NULL);
3338 _tmp125_ = _tmp124_;
3339 _tmp126_ = g_strconcat (_tmp125_, "dbus_property_info", NULL);
3340 _tmp127_ = _tmp126_;
3341 _tmp128_ = vala_ccode_identifier_new (_tmp127_);
3342 _tmp129_ = (ValaCCodeExpression*) _tmp128_;
3343 _g_free0 (_tmp127_);
3344 _g_free0 (_tmp125_);
3345 _g_free0 (_tmp123_);
3346 result = _tmp129_;
3347 _vala_ccode_node_unref0 (_cdecl_);
3348 _vala_ccode_node_unref0 (infos);
3349 return result;
3350 }
3351
3352 static void
vala_gd_bus_module_declare_interface_info(ValaGDBusModule * self,ValaObjectTypeSymbol * sym)3353 vala_gd_bus_module_declare_interface_info (ValaGDBusModule* self,
3354 ValaObjectTypeSymbol* sym)
3355 {
3356 ValaCCodeInitializerList* info = NULL;
3357 ValaCCodeInitializerList* _tmp0_;
3358 ValaCCodeConstant* _tmp1_;
3359 ValaCCodeConstant* _tmp2_;
3360 gchar* _tmp3_;
3361 gchar* _tmp4_;
3362 gchar* _tmp5_;
3363 gchar* _tmp6_;
3364 ValaCCodeConstant* _tmp7_;
3365 ValaCCodeConstant* _tmp8_;
3366 ValaCCodeExpression* _tmp9_;
3367 ValaCCodeExpression* _tmp10_;
3368 ValaCCodeUnaryExpression* _tmp11_;
3369 ValaCCodeUnaryExpression* _tmp12_;
3370 ValaCCodeCastExpression* _tmp13_;
3371 ValaCCodeCastExpression* _tmp14_;
3372 ValaCCodeExpression* _tmp15_;
3373 ValaCCodeExpression* _tmp16_;
3374 ValaCCodeUnaryExpression* _tmp17_;
3375 ValaCCodeUnaryExpression* _tmp18_;
3376 ValaCCodeCastExpression* _tmp19_;
3377 ValaCCodeCastExpression* _tmp20_;
3378 ValaCCodeExpression* _tmp21_;
3379 ValaCCodeExpression* _tmp22_;
3380 ValaCCodeUnaryExpression* _tmp23_;
3381 ValaCCodeUnaryExpression* _tmp24_;
3382 ValaCCodeCastExpression* _tmp25_;
3383 ValaCCodeCastExpression* _tmp26_;
3384 ValaCCodeConstant* _tmp27_;
3385 ValaCCodeConstant* _tmp28_;
3386 ValaCCodeDeclaration* _cdecl_ = NULL;
3387 ValaCCodeDeclaration* _tmp29_;
3388 gchar* _tmp30_;
3389 gchar* _tmp31_;
3390 gchar* _tmp32_;
3391 gchar* _tmp33_;
3392 gchar* _tmp34_;
3393 gchar* _tmp35_;
3394 ValaCCodeVariableDeclarator* _tmp36_;
3395 ValaCCodeVariableDeclarator* _tmp37_;
3396 ValaCCodeFile* _tmp38_;
3397 g_return_if_fail (self != NULL);
3398 g_return_if_fail (sym != NULL);
3399 _tmp0_ = vala_ccode_initializer_list_new ();
3400 info = _tmp0_;
3401 _tmp1_ = vala_ccode_constant_new ("-1");
3402 _tmp2_ = _tmp1_;
3403 vala_ccode_initializer_list_append (info, (ValaCCodeExpression*) _tmp2_);
3404 _vala_ccode_node_unref0 (_tmp2_);
3405 _tmp3_ = vala_gd_bus_module_get_dbus_name ((ValaTypeSymbol*) sym);
3406 _tmp4_ = _tmp3_;
3407 _tmp5_ = g_strdup_printf ("\"%s\"", _tmp4_);
3408 _tmp6_ = _tmp5_;
3409 _tmp7_ = vala_ccode_constant_new (_tmp6_);
3410 _tmp8_ = _tmp7_;
3411 vala_ccode_initializer_list_append (info, (ValaCCodeExpression*) _tmp8_);
3412 _vala_ccode_node_unref0 (_tmp8_);
3413 _g_free0 (_tmp6_);
3414 _g_free0 (_tmp4_);
3415 _tmp9_ = vala_gd_bus_module_get_method_info (self, sym);
3416 _tmp10_ = _tmp9_;
3417 _tmp11_ = vala_ccode_unary_expression_new (VALA_CCODE_UNARY_OPERATOR_ADDRESS_OF, _tmp10_);
3418 _tmp12_ = _tmp11_;
3419 _tmp13_ = vala_ccode_cast_expression_new ((ValaCCodeExpression*) _tmp12_, "GDBusMethodInfo **");
3420 _tmp14_ = _tmp13_;
3421 vala_ccode_initializer_list_append (info, (ValaCCodeExpression*) _tmp14_);
3422 _vala_ccode_node_unref0 (_tmp14_);
3423 _vala_ccode_node_unref0 (_tmp12_);
3424 _vala_ccode_node_unref0 (_tmp10_);
3425 _tmp15_ = vala_gd_bus_module_get_signal_info (self, sym);
3426 _tmp16_ = _tmp15_;
3427 _tmp17_ = vala_ccode_unary_expression_new (VALA_CCODE_UNARY_OPERATOR_ADDRESS_OF, _tmp16_);
3428 _tmp18_ = _tmp17_;
3429 _tmp19_ = vala_ccode_cast_expression_new ((ValaCCodeExpression*) _tmp18_, "GDBusSignalInfo **");
3430 _tmp20_ = _tmp19_;
3431 vala_ccode_initializer_list_append (info, (ValaCCodeExpression*) _tmp20_);
3432 _vala_ccode_node_unref0 (_tmp20_);
3433 _vala_ccode_node_unref0 (_tmp18_);
3434 _vala_ccode_node_unref0 (_tmp16_);
3435 _tmp21_ = vala_gd_bus_module_get_property_info (self, sym);
3436 _tmp22_ = _tmp21_;
3437 _tmp23_ = vala_ccode_unary_expression_new (VALA_CCODE_UNARY_OPERATOR_ADDRESS_OF, _tmp22_);
3438 _tmp24_ = _tmp23_;
3439 _tmp25_ = vala_ccode_cast_expression_new ((ValaCCodeExpression*) _tmp24_, "GDBusPropertyInfo **");
3440 _tmp26_ = _tmp25_;
3441 vala_ccode_initializer_list_append (info, (ValaCCodeExpression*) _tmp26_);
3442 _vala_ccode_node_unref0 (_tmp26_);
3443 _vala_ccode_node_unref0 (_tmp24_);
3444 _vala_ccode_node_unref0 (_tmp22_);
3445 _tmp27_ = vala_ccode_constant_new ("NULL");
3446 _tmp28_ = _tmp27_;
3447 vala_ccode_initializer_list_append (info, (ValaCCodeExpression*) _tmp28_);
3448 _vala_ccode_node_unref0 (_tmp28_);
3449 _tmp29_ = vala_ccode_declaration_new ("const GDBusInterfaceInfo");
3450 _cdecl_ = _tmp29_;
3451 _tmp30_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
3452 _tmp31_ = _tmp30_;
3453 _tmp32_ = g_strconcat ("_", _tmp31_, NULL);
3454 _tmp33_ = _tmp32_;
3455 _tmp34_ = g_strconcat (_tmp33_, "dbus_interface_info", NULL);
3456 _tmp35_ = _tmp34_;
3457 _tmp36_ = vala_ccode_variable_declarator_new (_tmp35_, (ValaCCodeExpression*) info, NULL);
3458 _tmp37_ = _tmp36_;
3459 vala_ccode_declaration_add_declarator (_cdecl_, (ValaCCodeDeclarator*) _tmp37_);
3460 _vala_ccode_node_unref0 (_tmp37_);
3461 _g_free0 (_tmp35_);
3462 _g_free0 (_tmp33_);
3463 _g_free0 (_tmp31_);
3464 vala_ccode_node_set_modifiers ((ValaCCodeNode*) _cdecl_, VALA_CCODE_MODIFIERS_STATIC);
3465 _tmp38_ = ((ValaCCodeBaseModule*) self)->cfile;
3466 vala_ccode_file_add_constant_declaration (_tmp38_, (ValaCCodeNode*) _cdecl_);
3467 _vala_ccode_node_unref0 (_cdecl_);
3468 _vala_ccode_node_unref0 (info);
3469 }
3470
3471 ValaCCodeExpression*
vala_gd_bus_module_get_interface_info(ValaGDBusModule * self,ValaObjectTypeSymbol * sym)3472 vala_gd_bus_module_get_interface_info (ValaGDBusModule* self,
3473 ValaObjectTypeSymbol* sym)
3474 {
3475 gchar* _tmp0_;
3476 gchar* _tmp1_;
3477 gchar* _tmp2_;
3478 gchar* _tmp3_;
3479 gchar* _tmp4_;
3480 gchar* _tmp5_;
3481 ValaCCodeIdentifier* _tmp6_;
3482 ValaCCodeExpression* _tmp7_;
3483 ValaCCodeExpression* result = NULL;
3484 g_return_val_if_fail (self != NULL, NULL);
3485 g_return_val_if_fail (sym != NULL, NULL);
3486 _tmp0_ = vala_get_ccode_lower_case_prefix ((ValaSymbol*) sym);
3487 _tmp1_ = _tmp0_;
3488 _tmp2_ = g_strconcat ("_", _tmp1_, NULL);
3489 _tmp3_ = _tmp2_;
3490 _tmp4_ = g_strconcat (_tmp3_, "dbus_interface_info", NULL);
3491 _tmp5_ = _tmp4_;
3492 _tmp6_ = vala_ccode_identifier_new (_tmp5_);
3493 _tmp7_ = (ValaCCodeExpression*) _tmp6_;
3494 _g_free0 (_tmp5_);
3495 _g_free0 (_tmp3_);
3496 _g_free0 (_tmp1_);
3497 result = _tmp7_;
3498 return result;
3499 }
3500
3501 static void
vala_gd_bus_module_real_visit_class(ValaCodeVisitor * base,ValaClass * cl)3502 vala_gd_bus_module_real_visit_class (ValaCodeVisitor* base,
3503 ValaClass* cl)
3504 {
3505 ValaGDBusModule * self;
3506 self = (ValaGDBusModule*) base;
3507 g_return_if_fail (cl != NULL);
3508 VALA_CODE_VISITOR_CLASS (vala_gd_bus_module_parent_class)->visit_class ((ValaCodeVisitor*) G_TYPE_CHECK_INSTANCE_CAST (self, VALA_TYPE_GVARIANT_MODULE, ValaGVariantModule), cl);
3509 vala_gd_bus_module_visit_object_type_symbol (self, (ValaObjectTypeSymbol*) cl);
3510 }
3511
3512 static void
vala_gd_bus_module_real_visit_interface(ValaCodeVisitor * base,ValaInterface * iface)3513 vala_gd_bus_module_real_visit_interface (ValaCodeVisitor* base,
3514 ValaInterface* iface)
3515 {
3516 ValaGDBusModule * self;
3517 self = (ValaGDBusModule*) base;
3518 g_return_if_fail (iface != NULL);
3519 VALA_CODE_VISITOR_CLASS (vala_gd_bus_module_parent_class)->visit_interface ((ValaCodeVisitor*) G_TYPE_CHECK_INSTANCE_CAST (self, VALA_TYPE_GVARIANT_MODULE, ValaGVariantModule), iface);
3520 vala_gd_bus_module_visit_object_type_symbol (self, (ValaObjectTypeSymbol*) iface);
3521 }
3522
3523 static void
vala_gd_bus_module_visit_object_type_symbol(ValaGDBusModule * self,ValaObjectTypeSymbol * sym)3524 vala_gd_bus_module_visit_object_type_symbol (ValaGDBusModule* self,
3525 ValaObjectTypeSymbol* sym)
3526 {
3527 gchar* _tmp0_;
3528 gchar* _tmp1_;
3529 gboolean _tmp2_;
3530 g_return_if_fail (self != NULL);
3531 g_return_if_fail (sym != NULL);
3532 _tmp0_ = vala_gd_bus_module_get_dbus_name ((ValaTypeSymbol*) sym);
3533 _tmp1_ = _tmp0_;
3534 _tmp2_ = _tmp1_ == NULL;
3535 _g_free0 (_tmp1_);
3536 if (_tmp2_) {
3537 return;
3538 }
3539 vala_gd_bus_module_declare_interface_info (self, sym);
3540 }
3541
3542 ValaGDBusModule*
vala_gd_bus_module_construct(GType object_type)3543 vala_gd_bus_module_construct (GType object_type)
3544 {
3545 ValaGDBusModule* self = NULL;
3546 self = (ValaGDBusModule*) vala_gvariant_module_construct (object_type);
3547 return self;
3548 }
3549
3550 ValaGDBusModule*
vala_gd_bus_module_new(void)3551 vala_gd_bus_module_new (void)
3552 {
3553 return vala_gd_bus_module_construct (VALA_TYPE_GD_BUS_MODULE);
3554 }
3555
3556 static void
vala_gd_bus_module_class_init(ValaGDBusModuleClass * klass,gpointer klass_data)3557 vala_gd_bus_module_class_init (ValaGDBusModuleClass * klass,
3558 gpointer klass_data)
3559 {
3560 vala_gd_bus_module_parent_class = g_type_class_peek_parent (klass);
3561 ((ValaCodeVisitorClass *) klass)->visit_error_domain = (void (*) (ValaCodeVisitor*, ValaErrorDomain*)) vala_gd_bus_module_real_visit_error_domain;
3562 ((ValaCodeVisitorClass *) klass)->visit_class = (void (*) (ValaCodeVisitor*, ValaClass*)) vala_gd_bus_module_real_visit_class;
3563 ((ValaCodeVisitorClass *) klass)->visit_interface = (void (*) (ValaCodeVisitor*, ValaInterface*)) vala_gd_bus_module_real_visit_interface;
3564 }
3565
3566 static void
vala_gd_bus_module_instance_init(ValaGDBusModule * self,gpointer klass)3567 vala_gd_bus_module_instance_init (ValaGDBusModule * self,
3568 gpointer klass)
3569 {
3570 }
3571
3572 static GType
vala_gd_bus_module_get_type_once(void)3573 vala_gd_bus_module_get_type_once (void)
3574 {
3575 static const GTypeInfo g_define_type_info = { sizeof (ValaGDBusModuleClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) vala_gd_bus_module_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (ValaGDBusModule), 0, (GInstanceInitFunc) vala_gd_bus_module_instance_init, NULL };
3576 GType vala_gd_bus_module_type_id;
3577 vala_gd_bus_module_type_id = g_type_register_static (VALA_TYPE_GVARIANT_MODULE, "ValaGDBusModule", &g_define_type_info, 0);
3578 return vala_gd_bus_module_type_id;
3579 }
3580
3581 GType
vala_gd_bus_module_get_type(void)3582 vala_gd_bus_module_get_type (void)
3583 {
3584 static volatile gsize vala_gd_bus_module_type_id__volatile = 0;
3585 if (g_once_init_enter (&vala_gd_bus_module_type_id__volatile)) {
3586 GType vala_gd_bus_module_type_id;
3587 vala_gd_bus_module_type_id = vala_gd_bus_module_get_type_once ();
3588 g_once_init_leave (&vala_gd_bus_module_type_id__volatile, vala_gd_bus_module_type_id);
3589 }
3590 return vala_gd_bus_module_type_id__volatile;
3591 }
3592
3593