static gboolean vala_constructor_real_check (ValaCodeNode* base, ValaCodeContext* context) { ValaConstructor * self; gboolean result = FALSE; gboolean _tmp0_; gboolean _tmp1_; ValaCodeContext* _tmp4_; ValaSemanticAnalyzer* _tmp5_; ValaSemanticAnalyzer* _tmp6_; ValaClass* _tmp7_; ValaClass* _tmp8_; ValaObjectType* _tmp9_; ValaObjectType* _tmp10_; ValaParameter* _tmp11_; ValaParameter* _tmp12_; ValaScope* _tmp13_; ValaScope* _tmp14_; ValaParameter* _tmp15_; const gchar* _tmp16_; const gchar* _tmp17_; ValaParameter* _tmp18_; ValaCodeContext* _tmp19_; ValaSemanticAnalyzer* _tmp20_; ValaSemanticAnalyzer* _tmp21_; ValaSymbol* _tmp22_; ValaSymbol* _tmp23_; ValaScope* _tmp24_; ValaScope* _tmp25_; ValaCodeContext* _tmp26_; ValaSemanticAnalyzer* _tmp27_; ValaSemanticAnalyzer* _tmp28_; ValaBlock* _tmp29_; ValaBlock* _tmp30_; ValaCodeContext* _tmp57_; ValaSemanticAnalyzer* _tmp58_; ValaSemanticAnalyzer* _tmp59_; ValaCodeContext* _tmp60_; ValaSemanticAnalyzer* _tmp61_; ValaSemanticAnalyzer* _tmp62_; ValaSymbol* _tmp63_; ValaSymbol* _tmp64_; ValaSymbol* _tmp65_; ValaSymbol* _tmp66_; gboolean _tmp67_; gboolean _tmp68_; self = (ValaConstructor*) base; g_return_val_if_fail (context != NULL, FALSE); _tmp0_ = vala_code_node_get_checked ((ValaCodeNode*) self); _tmp1_ = _tmp0_; if (_tmp1_) { gboolean _tmp2_; gboolean _tmp3_; _tmp2_ = vala_code_node_get_error ((ValaCodeNode*) self); _tmp3_ = _tmp2_; result = !_tmp3_; return result; } vala_code_node_set_checked ((ValaCodeNode*) self, TRUE); _tmp4_ = context; _tmp5_ = vala_code_context_get_analyzer (_tmp4_); _tmp6_ = _tmp5_; _tmp7_ = vala_semantic_analyzer_get_current_class (_tmp6_); _tmp8_ = _tmp7_; _tmp9_ = vala_object_type_new ((ValaObjectTypeSymbol*) _tmp8_); _tmp10_ = _tmp9_; _tmp11_ = vala_parameter_new ("this", (ValaDataType*) _tmp10_, NULL); _tmp12_ = _tmp11_; vala_constructor_set_this_parameter (self, _tmp12_); _vala_code_node_unref0 (_tmp12_); _vala_code_node_unref0 (_tmp10_); _tmp13_ = vala_symbol_get_scope ((ValaSymbol*) self); _tmp14_ = _tmp13_; _tmp15_ = self->priv->_this_parameter; _tmp16_ = vala_symbol_get_name ((ValaSymbol*) _tmp15_); _tmp17_ = _tmp16_; _tmp18_ = self->priv->_this_parameter; vala_scope_add (_tmp14_, _tmp17_, (ValaSymbol*) _tmp18_); _tmp19_ = context; _tmp20_ = vala_code_context_get_analyzer (_tmp19_); _tmp21_ = _tmp20_; _tmp22_ = vala_semantic_analyzer_get_current_symbol (_tmp21_); _tmp23_ = _tmp22_; _tmp24_ = vala_symbol_get_scope (_tmp23_); _tmp25_ = _tmp24_; vala_symbol_set_owner ((ValaSymbol*) self, _tmp25_); _tmp26_ = context; _tmp27_ = vala_code_context_get_analyzer (_tmp26_); _tmp28_ = _tmp27_; vala_semantic_analyzer_set_current_symbol (_tmp28_, (ValaSymbol*) self); _tmp29_ = vala_subroutine_get_body ((ValaSubroutine*) self); _tmp30_ = _tmp29_; if (_tmp30_ != NULL) { ValaBlock* _tmp31_; ValaBlock* _tmp32_; ValaCodeContext* _tmp33_; _tmp31_ = vala_subroutine_get_body ((ValaSubroutine*) self); _tmp32_ = _tmp31_; _tmp33_ = context; vala_code_node_check ((ValaCodeNode*) _tmp32_, _tmp33_); } { ValaBlock* _tmp34_; ValaBlock* _tmp35_; ValaList* _tmp36_ = NULL; ValaList* _body_error_type_list; ValaList* _tmp37_; gint _tmp38_; gint _tmp39_; gint _body_error_type_size; gint _body_error_type_index; _tmp34_ = vala_subroutine_get_body ((ValaSubroutine*) self); _tmp35_ = _tmp34_; _tmp36_ = vala_code_node_get_error_types ((ValaCodeNode*) _tmp35_); _body_error_type_list = _tmp36_; _tmp37_ = _body_error_type_list; _tmp38_ = vala_collection_get_size ((ValaCollection*) _tmp37_); _tmp39_ = _tmp38_; _body_error_type_size = _tmp39_; _body_error_type_index = -1; while (TRUE) { gint _tmp40_; gint _tmp41_; gint _tmp42_; ValaList* _tmp43_; gint _tmp44_; gpointer _tmp45_ = NULL; ValaDataType* body_error_type; ValaDataType* _tmp46_; gboolean _tmp47_; gboolean _tmp48_; _tmp40_ = _body_error_type_index; _body_error_type_index = _tmp40_ + 1; _tmp41_ = _body_error_type_index; _tmp42_ = _body_error_type_size; if (!(_tmp41_ < _tmp42_)) { break; } _tmp43_ = _body_error_type_list; _tmp44_ = _body_error_type_index; _tmp45_ = vala_list_get (_tmp43_, _tmp44_); body_error_type = (ValaDataType*) _tmp45_; _tmp46_ = body_error_type; _tmp47_ = vala_error_type_get_dynamic_error (VALA_ERROR_TYPE (_tmp46_)); _tmp48_ = _tmp47_; if (!_tmp48_) { ValaDataType* _tmp49_; ValaSourceReference* _tmp50_; ValaSourceReference* _tmp51_; ValaDataType* _tmp52_; gchar* _tmp53_ = NULL; gchar* _tmp54_; gchar* _tmp55_ = NULL; gchar* _tmp56_; _tmp49_ = body_error_type; _tmp50_ = vala_code_node_get_source_reference ((ValaCodeNode*) _tmp49_); _tmp51_ = _tmp50_; _tmp52_ = body_error_type; _tmp53_ = vala_code_node_to_string ((ValaCodeNode*) _tmp52_); _tmp54_ = _tmp53_; _tmp55_ = g_strdup_printf ("unhandled error `%s'", _tmp54_); _tmp56_ = _tmp55_; vala_report_warning (_tmp51_, _tmp56_); _g_free0 (_tmp56_); _g_free0 (_tmp54_); } _vala_code_node_unref0 (body_error_type); } _vala_iterable_unref0 (_body_error_type_list); } _tmp57_ = context; _tmp58_ = vala_code_context_get_analyzer (_tmp57_); _tmp59_ = _tmp58_; _tmp60_ = context; _tmp61_ = vala_code_context_get_analyzer (_tmp60_); _tmp62_ = _tmp61_; _tmp63_ = vala_semantic_analyzer_get_current_symbol (_tmp62_); _tmp64_ = _tmp63_; _tmp65_ = vala_symbol_get_parent_symbol (_tmp64_); _tmp66_ = _tmp65_; vala_semantic_analyzer_set_current_symbol (_tmp59_, _tmp66_); _tmp67_ = vala_code_node_get_error ((ValaCodeNode*) self); _tmp68_ = _tmp67_; result = !_tmp68_; return result; }
gchar* vala_method_type_to_prototype_string (ValaMethodType* self, gboolean with_type_parameters) { gchar* result = NULL; ValaDataType* _tmp0_ = NULL; ValaDataType* _tmp1_; gchar* _tmp2_ = NULL; gchar* _tmp3_; gchar* _tmp4_ = NULL; gchar* _tmp5_; gchar* _tmp6_ = NULL; gchar* _tmp7_; gchar* proto; gint i; const gchar* _tmp73_; gchar* _tmp74_; g_return_val_if_fail (self != NULL, NULL); _tmp0_ = vala_data_type_get_return_type ((ValaDataType*) self); _tmp1_ = _tmp0_; _tmp2_ = vala_code_node_to_string ((ValaCodeNode*) _tmp1_); _tmp3_ = _tmp2_; _tmp4_ = vala_code_node_to_string ((ValaCodeNode*) self); _tmp5_ = _tmp4_; _tmp6_ = g_strdup_printf ("%s %s (", _tmp3_, _tmp5_); _tmp7_ = _tmp6_; _g_free0 (_tmp5_); _g_free0 (_tmp3_); _vala_code_node_unref0 (_tmp1_); proto = _tmp7_; i = 1; { ValaList* _tmp8_ = NULL; ValaList* _param_list; ValaList* _tmp9_; gint _tmp10_; gint _tmp11_; gint _param_size; gint _param_index; _tmp8_ = vala_data_type_get_parameters ((ValaDataType*) self); _param_list = _tmp8_; _tmp9_ = _param_list; _tmp10_ = vala_collection_get_size ((ValaCollection*) _tmp9_); _tmp11_ = _tmp10_; _param_size = _tmp11_; _param_index = -1; while (TRUE) { gint _tmp12_; gint _tmp13_; gint _tmp14_; ValaList* _tmp15_; gint _tmp16_; gpointer _tmp17_ = NULL; ValaParameter* param; gint _tmp18_; ValaParameter* _tmp21_; gboolean _tmp22_; gboolean _tmp23_; ValaParameter* _tmp26_; ValaParameterDirection _tmp27_; ValaParameterDirection _tmp28_; const gchar* _tmp52_; ValaParameter* _tmp53_; ValaDataType* _tmp54_; ValaDataType* _tmp55_; gchar* _tmp56_ = NULL; gchar* _tmp57_; ValaParameter* _tmp58_; const gchar* _tmp59_; const gchar* _tmp60_; gchar* _tmp61_ = NULL; ValaParameter* _tmp62_; ValaExpression* _tmp63_; ValaExpression* _tmp64_; gint _tmp72_; _tmp12_ = _param_index; _param_index = _tmp12_ + 1; _tmp13_ = _param_index; _tmp14_ = _param_size; if (!(_tmp13_ < _tmp14_)) { break; } _tmp15_ = _param_list; _tmp16_ = _param_index; _tmp17_ = vala_list_get (_tmp15_, _tmp16_); param = (ValaParameter*) _tmp17_; _tmp18_ = i; if (_tmp18_ > 1) { const gchar* _tmp19_; gchar* _tmp20_; _tmp19_ = proto; _tmp20_ = g_strconcat (_tmp19_, ", ", NULL); _g_free0 (proto); proto = _tmp20_; } _tmp21_ = param; _tmp22_ = vala_parameter_get_ellipsis (_tmp21_); _tmp23_ = _tmp22_; if (_tmp23_) { const gchar* _tmp24_; gchar* _tmp25_; _tmp24_ = proto; _tmp25_ = g_strconcat (_tmp24_, "...", NULL); _g_free0 (proto); proto = _tmp25_; _vala_code_node_unref0 (param); continue; } _tmp26_ = param; _tmp27_ = vala_parameter_get_direction (_tmp26_); _tmp28_ = _tmp27_; if (_tmp28_ == VALA_PARAMETER_DIRECTION_IN) { ValaParameter* _tmp29_; ValaDataType* _tmp30_; ValaDataType* _tmp31_; gboolean _tmp32_; gboolean _tmp33_; _tmp29_ = param; _tmp30_ = vala_variable_get_variable_type ((ValaVariable*) _tmp29_); _tmp31_ = _tmp30_; _tmp32_ = vala_data_type_get_value_owned (_tmp31_); _tmp33_ = _tmp32_; if (_tmp33_) { const gchar* _tmp34_; gchar* _tmp35_; _tmp34_ = proto; _tmp35_ = g_strconcat (_tmp34_, "owned ", NULL); _g_free0 (proto); proto = _tmp35_; } } else { ValaParameter* _tmp36_; ValaParameterDirection _tmp37_; ValaParameterDirection _tmp38_; ValaParameter* _tmp46_; ValaDataType* _tmp47_; ValaDataType* _tmp48_; gboolean _tmp49_ = FALSE; _tmp36_ = param; _tmp37_ = vala_parameter_get_direction (_tmp36_); _tmp38_ = _tmp37_; if (_tmp38_ == VALA_PARAMETER_DIRECTION_REF) { const gchar* _tmp39_; gchar* _tmp40_; _tmp39_ = proto; _tmp40_ = g_strconcat (_tmp39_, "ref ", NULL); _g_free0 (proto); proto = _tmp40_; } else { ValaParameter* _tmp41_; ValaParameterDirection _tmp42_; ValaParameterDirection _tmp43_; _tmp41_ = param; _tmp42_ = vala_parameter_get_direction (_tmp41_); _tmp43_ = _tmp42_; if (_tmp43_ == VALA_PARAMETER_DIRECTION_OUT) { const gchar* _tmp44_; gchar* _tmp45_; _tmp44_ = proto; _tmp45_ = g_strconcat (_tmp44_, "out ", NULL); _g_free0 (proto); proto = _tmp45_; } } _tmp46_ = param; _tmp47_ = vala_variable_get_variable_type ((ValaVariable*) _tmp46_); _tmp48_ = _tmp47_; _tmp49_ = vala_data_type_is_weak (_tmp48_); if (_tmp49_) { const gchar* _tmp50_; gchar* _tmp51_; _tmp50_ = proto; _tmp51_ = g_strconcat (_tmp50_, "unowned ", NULL); _g_free0 (proto); proto = _tmp51_; } } _tmp52_ = proto; _tmp53_ = param; _tmp54_ = vala_variable_get_variable_type ((ValaVariable*) _tmp53_); _tmp55_ = _tmp54_; _tmp56_ = vala_data_type_to_qualified_string (_tmp55_, NULL); _tmp57_ = _tmp56_; _tmp58_ = param; _tmp59_ = vala_symbol_get_name ((ValaSymbol*) _tmp58_); _tmp60_ = _tmp59_; _tmp61_ = g_strdup_printf ("%s%s %s", _tmp52_, _tmp57_, _tmp60_); _g_free0 (proto); proto = _tmp61_; _g_free0 (_tmp57_); _tmp62_ = param; _tmp63_ = vala_variable_get_initializer ((ValaVariable*) _tmp62_); _tmp64_ = _tmp63_; if (_tmp64_ != NULL) { const gchar* _tmp65_; ValaParameter* _tmp66_; ValaExpression* _tmp67_; ValaExpression* _tmp68_; gchar* _tmp69_ = NULL; gchar* _tmp70_; gchar* _tmp71_ = NULL; _tmp65_ = proto; _tmp66_ = param; _tmp67_ = vala_variable_get_initializer ((ValaVariable*) _tmp66_); _tmp68_ = _tmp67_; _tmp69_ = vala_code_node_to_string ((ValaCodeNode*) _tmp68_); _tmp70_ = _tmp69_; _tmp71_ = g_strdup_printf ("%s = %s", _tmp65_, _tmp70_); _g_free0 (proto); proto = _tmp71_; _g_free0 (_tmp70_); } _tmp72_ = i; i = _tmp72_ + 1; _vala_code_node_unref0 (param); } _vala_iterable_unref0 (_param_list); } _tmp73_ = proto; _tmp74_ = g_strconcat (_tmp73_, ")", NULL); result = _tmp74_; _g_free0 (proto); return result; }
static void vala_dova_array_module_real_visit_array_creation_expression (ValaCodeVisitor* base, ValaArrayCreationExpression* expr) { ValaDovaArrayModule * self; ValaArrayCreationExpression* _tmp0_; ValaDataType* _tmp1_; ValaDataType* _tmp2_; ValaArrayType* _tmp3_; ValaArrayType* array_type; gboolean _tmp4_ = FALSE; ValaArrayType* _tmp5_; gboolean _tmp9_; ValaStruct* _tmp24_; ValaScope* _tmp25_; ValaScope* _tmp26_; ValaSymbol* _tmp27_ = NULL; ValaMethod* _tmp28_; ValaCCodeFile* _tmp29_; ValaCCodeIdentifier* _tmp30_; ValaCCodeIdentifier* _tmp31_; ValaCCodeFunctionCall* _tmp32_; ValaCCodeFunctionCall* _tmp33_; ValaCCodeFunctionCall* array_new; ValaCCodeFunctionCall* _tmp34_; ValaArrayCreationExpression* _tmp35_; ValaDataType* _tmp36_; ValaDataType* _tmp37_; ValaCCodeExpression* _tmp38_ = NULL; ValaCCodeExpression* _tmp39_; ValaCCodeFunctionCall* _tmp40_; ValaArrayCreationExpression* _tmp41_; ValaList* _tmp42_ = NULL; ValaList* _tmp43_; gpointer _tmp44_ = NULL; ValaExpression* _tmp45_; ValaCCodeExpression* _tmp46_ = NULL; ValaCCodeExpression* _tmp47_; ValaArrayCreationExpression* _tmp48_; ValaDataType* _tmp49_; ValaDataType* _tmp50_; ValaArrayCreationExpression* _tmp51_; ValaLocalVariable* _tmp52_ = NULL; ValaLocalVariable* temp_var; ValaLocalVariable* _tmp53_; const gchar* _tmp54_; const gchar* _tmp55_; ValaCCodeExpression* _tmp56_ = NULL; ValaCCodeExpression* name_cnode; ValaLocalVariable* _tmp57_; ValaCCodeFunction* _tmp58_; ValaCCodeFunction* _tmp59_; ValaCCodeExpression* _tmp60_; ValaCCodeFunctionCall* _tmp61_; ValaArrayCreationExpression* _tmp62_; ValaCCodeExpression* _tmp63_; self = (ValaDovaArrayModule*) base; g_return_if_fail (expr != NULL); _tmp0_ = expr; _tmp1_ = vala_expression_get_target_type ((ValaExpression*) _tmp0_); _tmp2_ = _tmp1_; _tmp3_ = _vala_code_node_ref0 (VALA_IS_ARRAY_TYPE (_tmp2_) ? ((ValaArrayType*) _tmp2_) : NULL); array_type = _tmp3_; _tmp5_ = array_type; if (_tmp5_ != NULL) { ValaArrayType* _tmp6_; gboolean _tmp7_; gboolean _tmp8_; _tmp6_ = array_type; _tmp7_ = vala_array_type_get_fixed_length (_tmp6_); _tmp8_ = _tmp7_; _tmp4_ = _tmp8_; } else { _tmp4_ = FALSE; } _tmp9_ = _tmp4_; if (_tmp9_) { ValaArrayType* _tmp10_; ValaArrayCreationExpression* _tmp11_; ValaLocalVariable* _tmp12_ = NULL; ValaLocalVariable* temp_var; ValaLocalVariable* _tmp13_; const gchar* _tmp14_; const gchar* _tmp15_; ValaCCodeIdentifier* _tmp16_; ValaCCodeIdentifier* name_cnode; gint i; ValaLocalVariable* _tmp17_; ValaCCodeIdentifier* _tmp18_; ValaArrayCreationExpression* _tmp19_; ValaInitializerList* _tmp20_; ValaInitializerList* _tmp21_; ValaArrayCreationExpression* _tmp22_; ValaCCodeIdentifier* _tmp23_; _tmp10_ = array_type; _tmp11_ = expr; _tmp12_ = vala_dova_base_module_get_temp_variable ((ValaDovaBaseModule*) self, (ValaDataType*) _tmp10_, TRUE, (ValaCodeNode*) _tmp11_); temp_var = _tmp12_; _tmp13_ = temp_var; _tmp14_ = vala_symbol_get_name ((ValaSymbol*) _tmp13_); _tmp15_ = _tmp14_; _tmp16_ = vala_ccode_identifier_new (_tmp15_); name_cnode = _tmp16_; i = 0; _tmp17_ = temp_var; vala_dova_base_module_emit_temp_var ((ValaDovaBaseModule*) self, _tmp17_); _tmp18_ = name_cnode; _tmp19_ = expr; _tmp20_ = vala_array_creation_expression_get_initializer_list (_tmp19_); _tmp21_ = _tmp20_; vala_dova_array_module_append_initializer_list (self, (ValaCCodeExpression*) _tmp18_, _tmp21_, &i); _tmp22_ = expr; _tmp23_ = name_cnode; vala_dova_base_module_set_cvalue ((ValaDovaBaseModule*) self, (ValaExpression*) _tmp22_, (ValaCCodeExpression*) _tmp23_); _vala_ccode_node_unref0 (name_cnode); _vala_code_node_unref0 (temp_var); _vala_code_node_unref0 (array_type); return; } _tmp24_ = ((ValaDovaBaseModule*) self)->array_struct; _tmp25_ = vala_symbol_get_scope ((ValaSymbol*) _tmp24_); _tmp26_ = _tmp25_; _tmp27_ = vala_scope_lookup (_tmp26_, "create"); _tmp28_ = VALA_METHOD (_tmp27_); _tmp29_ = ((ValaDovaBaseModule*) self)->cfile; vala_dova_base_module_generate_method_declaration ((ValaDovaBaseModule*) self, _tmp28_, _tmp29_); _vala_code_node_unref0 (_tmp28_); _tmp30_ = vala_ccode_identifier_new ("dova_array_create"); _tmp31_ = _tmp30_; _tmp32_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp31_); _tmp33_ = _tmp32_; _vala_ccode_node_unref0 (_tmp31_); array_new = _tmp33_; _tmp34_ = array_new; _tmp35_ = expr; _tmp36_ = vala_array_creation_expression_get_element_type (_tmp35_); _tmp37_ = _tmp36_; _tmp38_ = vala_dova_base_module_get_type_id_expression ((ValaDovaBaseModule*) self, _tmp37_, FALSE); _tmp39_ = _tmp38_; vala_ccode_function_call_add_argument (_tmp34_, _tmp39_); _vala_ccode_node_unref0 (_tmp39_); _tmp40_ = array_new; _tmp41_ = expr; _tmp42_ = vala_array_creation_expression_get_sizes (_tmp41_); _tmp43_ = _tmp42_; _tmp44_ = vala_list_get (_tmp43_, 0); _tmp45_ = (ValaExpression*) _tmp44_; _tmp46_ = vala_dova_base_module_get_cvalue ((ValaDovaBaseModule*) self, _tmp45_); _tmp47_ = _tmp46_; vala_ccode_function_call_add_argument (_tmp40_, _tmp47_); _vala_ccode_node_unref0 (_tmp47_); _vala_code_node_unref0 (_tmp45_); _vala_iterable_unref0 (_tmp43_); _tmp48_ = expr; _tmp49_ = vala_expression_get_value_type ((ValaExpression*) _tmp48_); _tmp50_ = _tmp49_; _tmp51_ = expr; _tmp52_ = vala_dova_base_module_get_temp_variable ((ValaDovaBaseModule*) self, _tmp50_, TRUE, (ValaCodeNode*) _tmp51_); temp_var = _tmp52_; _tmp53_ = temp_var; _tmp54_ = vala_symbol_get_name ((ValaSymbol*) _tmp53_); _tmp55_ = _tmp54_; _tmp56_ = vala_dova_base_module_get_variable_cexpression ((ValaDovaBaseModule*) self, _tmp55_); name_cnode = _tmp56_; _tmp57_ = temp_var; vala_dova_base_module_emit_temp_var ((ValaDovaBaseModule*) self, _tmp57_); _tmp58_ = vala_dova_base_module_get_ccode ((ValaDovaBaseModule*) self); _tmp59_ = _tmp58_; _tmp60_ = name_cnode; _tmp61_ = array_new; vala_ccode_function_add_assignment (_tmp59_, _tmp60_, (ValaCCodeExpression*) _tmp61_); _tmp62_ = expr; _tmp63_ = name_cnode; vala_dova_base_module_set_cvalue ((ValaDovaBaseModule*) self, (ValaExpression*) _tmp62_, _tmp63_); _vala_ccode_node_unref0 (name_cnode); _vala_code_node_unref0 (temp_var); _vala_ccode_node_unref0 (array_new); _vala_code_node_unref0 (array_type); }
ValaMethod* vala_enum_value_type_get_to_string_method (ValaEnumValueType* self) { ValaMethod* result = NULL; ValaMethod* _tmp0_; ValaMethod* _tmp35_; ValaMethod* _tmp36_; g_return_val_if_fail (self != NULL, NULL); _tmp0_ = self->priv->to_string_method; if (_tmp0_ == NULL) { ValaCodeContext* _tmp1_ = NULL; ValaCodeContext* _tmp2_; ValaNamespace* _tmp3_; ValaNamespace* _tmp4_; ValaScope* _tmp5_; ValaScope* _tmp6_; ValaSymbol* _tmp7_ = NULL; ValaClass* _tmp8_; ValaObjectType* _tmp9_; ValaObjectType* _tmp10_; ValaObjectType* string_type; ValaObjectType* _tmp11_; ValaObjectType* _tmp12_; ValaMethod* _tmp13_; ValaMethod* _tmp14_; ValaMethod* _tmp15_; ValaMethod* _tmp16_; ValaTypeSymbol* _tmp17_; ValaTypeSymbol* _tmp18_; ValaScope* _tmp19_; ValaScope* _tmp20_; ValaMethod* _tmp21_; ValaParameter* _tmp22_; ValaParameter* _tmp23_; ValaMethod* _tmp24_; ValaScope* _tmp25_; ValaScope* _tmp26_; ValaMethod* _tmp27_; ValaParameter* _tmp28_; ValaParameter* _tmp29_; const gchar* _tmp30_; const gchar* _tmp31_; ValaMethod* _tmp32_; ValaParameter* _tmp33_; ValaParameter* _tmp34_; _tmp1_ = vala_code_context_get (); _tmp2_ = _tmp1_; _tmp3_ = vala_code_context_get_root (_tmp2_); _tmp4_ = _tmp3_; _tmp5_ = vala_symbol_get_scope ((ValaSymbol*) _tmp4_); _tmp6_ = _tmp5_; _tmp7_ = vala_scope_lookup (_tmp6_, "string"); _tmp8_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp7_, VALA_TYPE_CLASS, ValaClass); _tmp9_ = vala_object_type_new ((ValaObjectTypeSymbol*) _tmp8_); _tmp10_ = _tmp9_; _vala_code_node_unref0 (_tmp8_); _vala_code_context_unref0 (_tmp2_); string_type = _tmp10_; _tmp11_ = string_type; vala_data_type_set_value_owned ((ValaDataType*) _tmp11_, FALSE); _tmp12_ = string_type; _tmp13_ = vala_method_new ("to_string", (ValaDataType*) _tmp12_, NULL, NULL); _vala_code_node_unref0 (self->priv->to_string_method); self->priv->to_string_method = _tmp13_; _tmp14_ = self->priv->to_string_method; vala_symbol_set_access ((ValaSymbol*) _tmp14_, VALA_SYMBOL_ACCESSIBILITY_PUBLIC); _tmp15_ = self->priv->to_string_method; vala_symbol_set_external ((ValaSymbol*) _tmp15_, TRUE); _tmp16_ = self->priv->to_string_method; _tmp17_ = vala_value_type_get_type_symbol ((ValaValueType*) self); _tmp18_ = _tmp17_; _tmp19_ = vala_symbol_get_scope ((ValaSymbol*) _tmp18_); _tmp20_ = _tmp19_; vala_symbol_set_owner ((ValaSymbol*) _tmp16_, _tmp20_); _tmp21_ = self->priv->to_string_method; _tmp22_ = vala_parameter_new ("this", (ValaDataType*) self, NULL); _tmp23_ = _tmp22_; vala_method_set_this_parameter (_tmp21_, _tmp23_); _vala_code_node_unref0 (_tmp23_); _tmp24_ = self->priv->to_string_method; _tmp25_ = vala_symbol_get_scope ((ValaSymbol*) _tmp24_); _tmp26_ = _tmp25_; _tmp27_ = self->priv->to_string_method; _tmp28_ = vala_method_get_this_parameter (_tmp27_); _tmp29_ = _tmp28_; _tmp30_ = vala_symbol_get_name ((ValaSymbol*) _tmp29_); _tmp31_ = _tmp30_; _tmp32_ = self->priv->to_string_method; _tmp33_ = vala_method_get_this_parameter (_tmp32_); _tmp34_ = _tmp33_; vala_scope_add (_tmp26_, _tmp31_, (ValaSymbol*) _tmp34_); _vala_code_node_unref0 (string_type); } _tmp35_ = self->priv->to_string_method; _tmp36_ = _vala_code_node_ref0 (_tmp35_); result = _tmp36_; return result; }