1477
1477
vala_ccode_function_set_modifiers (function, _tmp51_ | VALA_CCODE_MODIFIERS_STATIC);
1482
_tmp53_ = vala_method_get_is_abstract (m);
1486
gboolean _tmp54_ = FALSE;
1488
_tmp55_ = vala_method_get_is_abstract (m);
1490
ValaTypeSymbol* _tmp56_ = NULL;
1491
_tmp56_ = vala_ccode_base_module_get_current_type_symbol ((ValaCCodeBaseModule*) self);
1492
_tmp54_ = VALA_IS_CLASS (_tmp56_);
1499
ValaBlock* _tmp57_ = NULL;
1500
_tmp57_ = vala_subroutine_get_body ((ValaSubroutine*) m);
1501
if (_tmp57_ != NULL) {
1503
_tmp58_ = vala_method_get_coroutine (m);
1505
gchar* _tmp59_ = NULL;
1481
ValaBlock* _tmp52_ = NULL;
1482
_tmp52_ = vala_subroutine_get_body ((ValaSubroutine*) m);
1483
if (_tmp52_ != NULL) {
1484
gchar* _tmp53_ = NULL;
1487
ValaCCodeFunction* _tmp56_ = NULL;
1488
ValaCCodeFunction* _tmp57_;
1489
gchar* _tmp58_ = NULL;
1491
gchar* _tmp60_ = NULL;
1507
1492
gchar* _tmp61_;
1508
ValaCCodeFunction* _tmp62_ = NULL;
1509
ValaCCodeFunction* _tmp63_;
1510
gchar* _tmp64_ = NULL;
1512
gchar* _tmp66_ = NULL;
1515
ValaCCodeParameter* _tmp69_ = NULL;
1516
ValaCCodeParameter* _tmp70_;
1517
ValaCCodeModifiers _tmp71_;
1518
_tmp59_ = vala_method_get_real_cname (m);
1520
_tmp61_ = g_strconcat (_tmp60_, "_co", NULL);
1521
_tmp62_ = vala_ccode_function_new (_tmp61_, "gboolean");
1494
ValaCCodeParameter* _tmp63_ = NULL;
1495
ValaCCodeParameter* _tmp64_;
1496
ValaCCodeModifiers _tmp65_;
1497
_tmp53_ = vala_method_get_real_cname (m);
1499
_tmp55_ = g_strconcat (_tmp54_, "_co", NULL);
1500
_tmp56_ = vala_ccode_function_new (_tmp55_, "gboolean");
1523
1502
_vala_ccode_node_unref0 (function);
1506
_tmp58_ = vala_method_get_cname (m);
1508
_tmp60_ = vala_symbol_lower_case_to_camel_case (_tmp59_);
1510
_tmp62_ = g_strconcat (_tmp61_, "Data*", NULL);
1511
_tmp63_ = vala_ccode_parameter_new ("data", _tmp62_);
1513
vala_ccode_function_add_parameter (function, _tmp64_);
1514
_vala_ccode_node_unref0 (_tmp64_);
1525
1516
_g_free0 (_tmp61_);
1527
_tmp64_ = vala_method_get_cname (m);
1529
_tmp66_ = vala_symbol_lower_case_to_camel_case (_tmp65_);
1531
_tmp68_ = g_strconcat (_tmp67_, "Data*", NULL);
1532
_tmp69_ = vala_ccode_parameter_new ("data", _tmp68_);
1534
vala_ccode_function_add_parameter (function, _tmp70_);
1535
_vala_ccode_node_unref0 (_tmp70_);
1539
_tmp71_ = vala_ccode_function_get_modifiers (function);
1540
vala_ccode_function_set_modifiers (function, _tmp71_ | VALA_CCODE_MODIFIERS_STATIC);
1518
_tmp65_ = vala_ccode_function_get_modifiers (function);
1519
vala_ccode_function_set_modifiers (function, _tmp65_ | VALA_CCODE_MODIFIERS_STATIC);
1541
1520
vala_ccode_file_add_function_declaration (((ValaCCodeBaseModule*) self)->cfile, function);
1545
_tmp72_ = vala_symbol_get_comment ((ValaSymbol*) m);
1546
if (_tmp72_ != NULL) {
1547
ValaComment* _tmp73_ = NULL;
1548
const gchar* _tmp74_ = NULL;
1549
ValaCCodeComment* _tmp75_ = NULL;
1550
ValaCCodeComment* _tmp76_;
1551
_tmp73_ = vala_symbol_get_comment ((ValaSymbol*) m);
1552
_tmp74_ = vala_comment_get_content (_tmp73_);
1553
_tmp75_ = vala_ccode_comment_new (_tmp74_);
1555
vala_ccode_file_add_type_member_definition (((ValaCCodeBaseModule*) self)->cfile, (ValaCCodeNode*) _tmp76_);
1556
_vala_ccode_node_unref0 (_tmp76_);
1524
_tmp66_ = vala_symbol_get_comment ((ValaSymbol*) m);
1525
if (_tmp66_ != NULL) {
1526
ValaComment* _tmp67_ = NULL;
1527
const gchar* _tmp68_ = NULL;
1528
ValaCCodeComment* _tmp69_ = NULL;
1529
ValaCCodeComment* _tmp70_;
1530
_tmp67_ = vala_symbol_get_comment ((ValaSymbol*) m);
1531
_tmp68_ = vala_comment_get_content (_tmp67_);
1532
_tmp69_ = vala_ccode_comment_new (_tmp68_);
1534
vala_ccode_file_add_type_member_definition (((ValaCCodeBaseModule*) self)->cfile, (ValaCCodeNode*) _tmp70_);
1535
_vala_ccode_node_unref0 (_tmp70_);
1558
1537
vala_ccode_base_module_push_function ((ValaCCodeBaseModule*) self, function);
1559
_tmp78_ = vala_method_get_is_abstract (m);
1538
_tmp72_ = vala_method_get_is_abstract (m);
1563
gboolean _tmp79_ = FALSE;
1565
_tmp80_ = vala_method_get_is_abstract (m);
1567
ValaTypeSymbol* _tmp81_ = NULL;
1568
_tmp81_ = vala_ccode_base_module_get_current_type_symbol ((ValaCCodeBaseModule*) self);
1569
_tmp79_ = VALA_IS_CLASS (_tmp81_);
1542
gboolean _tmp73_ = FALSE;
1544
_tmp74_ = vala_method_get_is_abstract (m);
1546
ValaTypeSymbol* _tmp75_ = NULL;
1547
_tmp75_ = vala_ccode_base_module_get_current_type_symbol ((ValaCCodeBaseModule*) self);
1548
_tmp73_ = VALA_IS_CLASS (_tmp75_);
1576
ValaBlock* _tmp82_ = NULL;
1577
_tmp82_ = vala_subroutine_get_body ((ValaSubroutine*) m);
1578
if (_tmp82_ != NULL) {
1581
gboolean _tmp342_ = FALSE;
1582
gboolean _tmp343_ = FALSE;
1583
ValaDataType* _tmp344_ = NULL;
1584
gboolean _tmp494_ = FALSE;
1585
ValaCodeContext* _tmp495_ = NULL;
1586
ValaMethod* _tmp496_ = NULL;
1587
_tmp83_ = vala_method_get_coroutine (m);
1589
ValaCCodeFunction* _tmp84_ = NULL;
1590
ValaCCodeIdentifier* _tmp85_ = NULL;
1591
ValaCCodeIdentifier* _tmp86_;
1592
ValaCCodeMemberAccess* _tmp87_ = NULL;
1593
ValaCCodeMemberAccess* _tmp88_;
1594
ValaCCodeFunction* _tmp89_ = NULL;
1595
ValaCCodeConstant* _tmp90_ = NULL;
1596
ValaCCodeConstant* _tmp91_;
1597
ValaCCodeFunction* _tmp92_ = NULL;
1555
ValaBlock* _tmp76_ = NULL;
1556
_tmp76_ = vala_subroutine_get_body ((ValaSubroutine*) m);
1557
if (_tmp76_ != NULL) {
1560
gboolean _tmp336_ = FALSE;
1561
gboolean _tmp337_ = FALSE;
1562
ValaDataType* _tmp338_ = NULL;
1563
gboolean _tmp488_ = FALSE;
1564
ValaCodeContext* _tmp489_ = NULL;
1565
ValaMethod* _tmp490_ = NULL;
1566
_tmp77_ = vala_method_get_coroutine (m);
1568
ValaCCodeFunction* _tmp78_ = NULL;
1569
ValaCCodeIdentifier* _tmp79_ = NULL;
1570
ValaCCodeIdentifier* _tmp80_;
1571
ValaCCodeMemberAccess* _tmp81_ = NULL;
1572
ValaCCodeMemberAccess* _tmp82_;
1573
ValaCCodeFunction* _tmp83_ = NULL;
1574
ValaCCodeConstant* _tmp84_ = NULL;
1575
ValaCCodeConstant* _tmp85_;
1576
ValaCCodeFunction* _tmp86_ = NULL;
1577
ValaCCodeFunction* _tmp97_ = NULL;
1578
ValaCCodeFunction* _tmp98_ = NULL;
1579
ValaCCodeIdentifier* _tmp99_ = NULL;
1580
ValaCCodeIdentifier* _tmp100_;
1581
ValaCCodeFunctionCall* _tmp101_ = NULL;
1582
ValaCCodeFunctionCall* _tmp102_;
1598
1583
ValaCCodeFunction* _tmp103_ = NULL;
1599
1584
ValaCCodeFunction* _tmp104_ = NULL;
1600
ValaCCodeIdentifier* _tmp105_ = NULL;
1601
ValaCCodeIdentifier* _tmp106_;
1602
ValaCCodeFunctionCall* _tmp107_ = NULL;
1603
ValaCCodeFunctionCall* _tmp108_;
1604
ValaCCodeFunction* _tmp109_ = NULL;
1605
ValaCCodeFunction* _tmp110_ = NULL;
1606
_tmp84_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1607
_tmp85_ = vala_ccode_identifier_new ("data");
1609
_tmp87_ = vala_ccode_member_access_new_pointer ((ValaCCodeExpression*) _tmp86_, "_state_");
1611
vala_ccode_function_open_switch (_tmp84_, (ValaCCodeExpression*) _tmp88_);
1612
_vala_ccode_node_unref0 (_tmp88_);
1613
_vala_ccode_node_unref0 (_tmp86_);
1614
_tmp89_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1615
_tmp90_ = vala_ccode_constant_new ("0");
1617
vala_ccode_function_add_case (_tmp89_, (ValaCCodeExpression*) _tmp91_);
1618
_vala_ccode_node_unref0 (_tmp91_);
1619
_tmp92_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1620
vala_ccode_function_add_goto (_tmp92_, "_state_0");
1585
_tmp78_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1586
_tmp79_ = vala_ccode_identifier_new ("data");
1588
_tmp81_ = vala_ccode_member_access_new_pointer ((ValaCCodeExpression*) _tmp80_, "_state_");
1590
vala_ccode_function_open_switch (_tmp78_, (ValaCCodeExpression*) _tmp82_);
1591
_vala_ccode_node_unref0 (_tmp82_);
1592
_vala_ccode_node_unref0 (_tmp80_);
1593
_tmp83_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1594
_tmp84_ = vala_ccode_constant_new ("0");
1596
vala_ccode_function_add_case (_tmp83_, (ValaCCodeExpression*) _tmp85_);
1597
_vala_ccode_node_unref0 (_tmp85_);
1598
_tmp86_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1599
vala_ccode_function_add_goto (_tmp86_, "_state_0");
1629
ValaCCodeFunction* _tmp95_ = NULL;
1630
gchar* _tmp96_ = NULL;
1632
ValaCCodeConstant* _tmp98_ = NULL;
1633
ValaCCodeConstant* _tmp99_;
1634
ValaCCodeFunction* _tmp100_ = NULL;
1635
gchar* _tmp101_ = NULL;
1608
ValaCCodeFunction* _tmp89_ = NULL;
1609
gchar* _tmp90_ = NULL;
1611
ValaCCodeConstant* _tmp92_ = NULL;
1612
ValaCCodeConstant* _tmp93_;
1613
ValaCCodeFunction* _tmp94_ = NULL;
1614
gchar* _tmp95_ = NULL;
1641
_tmp94_ = vala_method_get_yield_count (m);
1642
if (!(state <= _tmp94_)) {
1620
_tmp88_ = vala_method_get_yield_count (m);
1621
if (!(state <= _tmp88_)) {
1645
_tmp95_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1646
_tmp96_ = g_strdup_printf ("%i", state);
1648
_tmp98_ = vala_ccode_constant_new (_tmp97_);
1650
vala_ccode_function_add_case (_tmp95_, (ValaCCodeExpression*) _tmp99_);
1651
_vala_ccode_node_unref0 (_tmp99_);
1653
_tmp100_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1654
_tmp101_ = g_strdup_printf ("_state_%d", state);
1655
_tmp102_ = _tmp101_;
1656
vala_ccode_function_add_goto (_tmp100_, _tmp102_);
1657
_g_free0 (_tmp102_);
1624
_tmp89_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1625
_tmp90_ = g_strdup_printf ("%i", state);
1627
_tmp92_ = vala_ccode_constant_new (_tmp91_);
1629
vala_ccode_function_add_case (_tmp89_, (ValaCCodeExpression*) _tmp93_);
1630
_vala_ccode_node_unref0 (_tmp93_);
1632
_tmp94_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1633
_tmp95_ = g_strdup_printf ("_state_%d", state);
1635
vala_ccode_function_add_goto (_tmp94_, _tmp96_);
1640
_tmp97_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1641
vala_ccode_function_add_default (_tmp97_);
1642
_tmp98_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1643
_tmp99_ = vala_ccode_identifier_new ("g_assert_not_reached");
1645
_tmp101_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp100_);
1646
_tmp102_ = _tmp101_;
1647
vala_ccode_function_add_expression (_tmp98_, (ValaCCodeExpression*) _tmp102_);
1648
_vala_ccode_node_unref0 (_tmp102_);
1649
_vala_ccode_node_unref0 (_tmp100_);
1661
1650
_tmp103_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1662
vala_ccode_function_add_default (_tmp103_);
1651
vala_ccode_function_close (_tmp103_);
1663
1652
_tmp104_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1664
_tmp105_ = vala_ccode_identifier_new ("g_assert_not_reached");
1665
_tmp106_ = _tmp105_;
1666
_tmp107_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp106_);
1667
_tmp108_ = _tmp107_;
1668
vala_ccode_function_add_expression (_tmp104_, (ValaCCodeExpression*) _tmp108_);
1669
_vala_ccode_node_unref0 (_tmp108_);
1670
_vala_ccode_node_unref0 (_tmp106_);
1671
_tmp109_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1672
vala_ccode_function_close (_tmp109_);
1673
_tmp110_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1674
vala_ccode_function_add_label (_tmp110_, "_state_0");
1653
vala_ccode_function_add_label (_tmp104_, "_state_0");
1676
_tmp111_ = vala_method_get_closure (m);
1678
ValaBlock* _tmp112_ = NULL;
1679
ValaBlock* _tmp113_;
1655
_tmp105_ = vala_method_get_closure (m);
1657
ValaBlock* _tmp106_ = NULL;
1658
ValaBlock* _tmp107_;
1680
1659
ValaBlock* closure_block;
1683
ValaMemberBinding _tmp143_;
1684
_tmp112_ = vala_ccode_base_module_get_current_closure_block ((ValaCCodeBaseModule*) self);
1685
_tmp113_ = _vala_code_node_ref0 (_tmp112_);
1686
closure_block = _tmp113_;
1687
_tmp114_ = vala_ccode_base_module_get_block_id ((ValaCCodeBaseModule*) self, closure_block);
1688
block_id = _tmp114_;
1662
ValaMemberBinding _tmp137_;
1663
_tmp106_ = vala_ccode_base_module_get_current_closure_block ((ValaCCodeBaseModule*) self);
1664
_tmp107_ = _vala_code_node_ref0 (_tmp106_);
1665
closure_block = _tmp107_;
1666
_tmp108_ = vala_ccode_base_module_get_block_id ((ValaCCodeBaseModule*) self, closure_block);
1667
block_id = _tmp108_;
1690
ValaSymbol* _tmp115_ = NULL;
1691
ValaBlock* _tmp116_ = NULL;
1692
ValaBlock* _tmp117_;
1669
ValaSymbol* _tmp109_ = NULL;
1670
ValaBlock* _tmp110_ = NULL;
1671
ValaBlock* _tmp111_;
1693
1672
ValaBlock* parent_closure_block;
1695
1674
gint parent_block_id;
1696
gchar* _tmp119_ = NULL;
1698
ValaCCodeIdentifier* _tmp121_ = NULL;
1699
ValaCCodeIdentifier* _tmp122_;
1700
gchar* _tmp123_ = NULL;
1702
ValaCCodeMemberAccess* _tmp125_ = NULL;
1703
ValaCCodeMemberAccess* _tmp126_;
1675
gchar* _tmp113_ = NULL;
1677
ValaCCodeIdentifier* _tmp115_ = NULL;
1678
ValaCCodeIdentifier* _tmp116_;
1679
gchar* _tmp117_ = NULL;
1681
ValaCCodeMemberAccess* _tmp119_ = NULL;
1682
ValaCCodeMemberAccess* _tmp120_;
1704
1683
ValaCCodeMemberAccess* parent_data;
1705
ValaCCodeFunction* _tmp127_ = NULL;
1706
gchar* _tmp128_ = NULL;
1708
gchar* _tmp130_ = NULL;
1710
ValaCCodeVariableDeclarator* _tmp132_ = NULL;
1711
ValaCCodeVariableDeclarator* _tmp133_;
1712
ValaCCodeFunction* _tmp134_ = NULL;
1713
gchar* _tmp135_ = NULL;
1715
ValaCCodeIdentifier* _tmp137_ = NULL;
1716
ValaCCodeIdentifier* _tmp138_;
1717
ValaCCodeAssignment* _tmp139_ = NULL;
1718
ValaCCodeAssignment* _tmp140_;
1719
ValaBlock* _tmp141_;
1720
ValaBlock* _tmp142_;
1721
_tmp115_ = vala_symbol_get_parent_symbol ((ValaSymbol*) closure_block);
1722
_tmp116_ = vala_ccode_base_module_next_closure_block ((ValaCCodeBaseModule*) self, _tmp115_);
1723
_tmp117_ = _vala_code_node_ref0 (_tmp116_);
1724
parent_closure_block = _tmp117_;
1684
ValaCCodeFunction* _tmp121_ = NULL;
1685
gchar* _tmp122_ = NULL;
1687
gchar* _tmp124_ = NULL;
1689
ValaCCodeVariableDeclarator* _tmp126_ = NULL;
1690
ValaCCodeVariableDeclarator* _tmp127_;
1691
ValaCCodeFunction* _tmp128_ = NULL;
1692
gchar* _tmp129_ = NULL;
1694
ValaCCodeIdentifier* _tmp131_ = NULL;
1695
ValaCCodeIdentifier* _tmp132_;
1696
ValaCCodeAssignment* _tmp133_ = NULL;
1697
ValaCCodeAssignment* _tmp134_;
1698
ValaBlock* _tmp135_;
1699
ValaBlock* _tmp136_;
1700
_tmp109_ = vala_symbol_get_parent_symbol ((ValaSymbol*) closure_block);
1701
_tmp110_ = vala_ccode_base_module_next_closure_block ((ValaCCodeBaseModule*) self, _tmp109_);
1702
_tmp111_ = _vala_code_node_ref0 (_tmp110_);
1703
parent_closure_block = _tmp111_;
1725
1704
if (parent_closure_block == NULL) {
1726
1705
_vala_code_node_unref0 (parent_closure_block);
1729
_tmp118_ = vala_ccode_base_module_get_block_id ((ValaCCodeBaseModule*) self, parent_closure_block);
1730
parent_block_id = _tmp118_;
1731
_tmp119_ = g_strdup_printf ("_data%d_", block_id);
1732
_tmp120_ = _tmp119_;
1733
_tmp121_ = vala_ccode_identifier_new (_tmp120_);
1734
_tmp122_ = _tmp121_;
1735
_tmp123_ = g_strdup_printf ("_data%d_", parent_block_id);
1736
_tmp124_ = _tmp123_;
1737
_tmp125_ = vala_ccode_member_access_new_pointer ((ValaCCodeExpression*) _tmp122_, _tmp124_);
1738
parent_data = (_tmp126_ = _tmp125_, _g_free0 (_tmp124_), _vala_ccode_node_unref0 (_tmp122_), _g_free0 (_tmp120_), _tmp126_);
1739
_tmp127_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1740
_tmp128_ = g_strdup_printf ("Block%dData*", parent_block_id);
1741
_tmp129_ = _tmp128_;
1742
_tmp130_ = g_strdup_printf ("_data%d_", parent_block_id);
1743
_tmp131_ = _tmp130_;
1744
_tmp132_ = vala_ccode_variable_declarator_new (_tmp131_, NULL, NULL);
1745
_tmp133_ = _tmp132_;
1746
vala_ccode_function_add_declaration (_tmp127_, _tmp129_, (ValaCCodeDeclarator*) _tmp133_, 0);
1747
_vala_ccode_node_unref0 (_tmp133_);
1748
_g_free0 (_tmp131_);
1749
_g_free0 (_tmp129_);
1750
_tmp134_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1751
_tmp135_ = g_strdup_printf ("_data%d_", parent_block_id);
1708
_tmp112_ = vala_ccode_base_module_get_block_id ((ValaCCodeBaseModule*) self, parent_closure_block);
1709
parent_block_id = _tmp112_;
1710
_tmp113_ = g_strdup_printf ("_data%d_", block_id);
1711
_tmp114_ = _tmp113_;
1712
_tmp115_ = vala_ccode_identifier_new (_tmp114_);
1713
_tmp116_ = _tmp115_;
1714
_tmp117_ = g_strdup_printf ("_data%d_", parent_block_id);
1715
_tmp118_ = _tmp117_;
1716
_tmp119_ = vala_ccode_member_access_new_pointer ((ValaCCodeExpression*) _tmp116_, _tmp118_);
1717
parent_data = (_tmp120_ = _tmp119_, _g_free0 (_tmp118_), _vala_ccode_node_unref0 (_tmp116_), _g_free0 (_tmp114_), _tmp120_);
1718
_tmp121_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1719
_tmp122_ = g_strdup_printf ("Block%dData*", parent_block_id);
1720
_tmp123_ = _tmp122_;
1721
_tmp124_ = g_strdup_printf ("_data%d_", parent_block_id);
1722
_tmp125_ = _tmp124_;
1723
_tmp126_ = vala_ccode_variable_declarator_new (_tmp125_, NULL, NULL);
1724
_tmp127_ = _tmp126_;
1725
vala_ccode_function_add_declaration (_tmp121_, _tmp123_, (ValaCCodeDeclarator*) _tmp127_, 0);
1726
_vala_ccode_node_unref0 (_tmp127_);
1727
_g_free0 (_tmp125_);
1728
_g_free0 (_tmp123_);
1729
_tmp128_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1730
_tmp129_ = g_strdup_printf ("_data%d_", parent_block_id);
1731
_tmp130_ = _tmp129_;
1732
_tmp131_ = vala_ccode_identifier_new (_tmp130_);
1733
_tmp132_ = _tmp131_;
1734
_tmp133_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp132_, (ValaCCodeExpression*) parent_data, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
1735
_tmp134_ = _tmp133_;
1736
vala_ccode_function_add_expression (_tmp128_, (ValaCCodeExpression*) _tmp134_);
1737
_vala_ccode_node_unref0 (_tmp134_);
1738
_vala_ccode_node_unref0 (_tmp132_);
1739
_g_free0 (_tmp130_);
1740
_tmp135_ = _vala_code_node_ref0 (parent_closure_block);
1752
1741
_tmp136_ = _tmp135_;
1753
_tmp137_ = vala_ccode_identifier_new (_tmp136_);
1754
_tmp138_ = _tmp137_;
1755
_tmp139_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp138_, (ValaCCodeExpression*) parent_data, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
1756
_tmp140_ = _tmp139_;
1757
vala_ccode_function_add_expression (_tmp134_, (ValaCCodeExpression*) _tmp140_);
1758
_vala_ccode_node_unref0 (_tmp140_);
1759
_vala_ccode_node_unref0 (_tmp138_);
1760
_g_free0 (_tmp136_);
1761
_tmp141_ = _vala_code_node_ref0 (parent_closure_block);
1762
_tmp142_ = _tmp141_;
1763
1742
_vala_code_node_unref0 (closure_block);
1764
closure_block = _tmp142_;
1743
closure_block = _tmp136_;
1765
1744
block_id = parent_block_id;
1766
1745
_vala_ccode_node_unref0 (parent_data);
1767
1746
_vala_code_node_unref0 (parent_closure_block);
1769
_tmp143_ = vala_method_get_binding (m);
1770
if (_tmp143_ == VALA_MEMBER_BINDING_INSTANCE) {
1771
gchar* _tmp144_ = NULL;
1773
ValaCCodeIdentifier* _tmp146_ = NULL;
1774
ValaCCodeIdentifier* _tmp147_;
1775
ValaCCodeMemberAccess* _tmp148_ = NULL;
1776
ValaCCodeMemberAccess* _tmp149_;
1748
_tmp137_ = vala_method_get_binding (m);
1749
if (_tmp137_ == VALA_MEMBER_BINDING_INSTANCE) {
1750
gchar* _tmp138_ = NULL;
1752
ValaCCodeIdentifier* _tmp140_ = NULL;
1753
ValaCCodeIdentifier* _tmp141_;
1754
ValaCCodeMemberAccess* _tmp142_ = NULL;
1755
ValaCCodeMemberAccess* _tmp143_;
1777
1756
ValaCCodeMemberAccess* cself;
1778
ValaCCodeFunction* _tmp150_ = NULL;
1779
ValaClass* _tmp151_ = NULL;
1780
gchar* _tmp152_ = NULL;
1782
gchar* _tmp154_ = NULL;
1784
ValaCCodeVariableDeclarator* _tmp156_ = NULL;
1785
ValaCCodeVariableDeclarator* _tmp157_;
1786
ValaCCodeFunction* _tmp158_ = NULL;
1787
ValaCCodeIdentifier* _tmp159_ = NULL;
1788
ValaCCodeIdentifier* _tmp160_;
1789
ValaCCodeAssignment* _tmp161_ = NULL;
1790
ValaCCodeAssignment* _tmp162_;
1791
_tmp144_ = g_strdup_printf ("_data%d_", block_id);
1792
_tmp145_ = _tmp144_;
1793
_tmp146_ = vala_ccode_identifier_new (_tmp145_);
1757
ValaCCodeFunction* _tmp144_ = NULL;
1758
ValaClass* _tmp145_ = NULL;
1759
gchar* _tmp146_ = NULL;
1761
gchar* _tmp148_ = NULL;
1763
ValaCCodeVariableDeclarator* _tmp150_ = NULL;
1764
ValaCCodeVariableDeclarator* _tmp151_;
1765
ValaCCodeFunction* _tmp152_ = NULL;
1766
ValaCCodeIdentifier* _tmp153_ = NULL;
1767
ValaCCodeIdentifier* _tmp154_;
1768
ValaCCodeAssignment* _tmp155_ = NULL;
1769
ValaCCodeAssignment* _tmp156_;
1770
_tmp138_ = g_strdup_printf ("_data%d_", block_id);
1771
_tmp139_ = _tmp138_;
1772
_tmp140_ = vala_ccode_identifier_new (_tmp139_);
1773
_tmp141_ = _tmp140_;
1774
_tmp142_ = vala_ccode_member_access_new_pointer ((ValaCCodeExpression*) _tmp141_, "self");
1775
cself = (_tmp143_ = _tmp142_, _vala_ccode_node_unref0 (_tmp141_), _g_free0 (_tmp139_), _tmp143_);
1776
_tmp144_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1777
_tmp145_ = vala_ccode_base_module_get_current_class ((ValaCCodeBaseModule*) self);
1778
_tmp146_ = vala_typesymbol_get_cname ((ValaTypeSymbol*) _tmp145_, FALSE);
1794
1779
_tmp147_ = _tmp146_;
1795
_tmp148_ = vala_ccode_member_access_new_pointer ((ValaCCodeExpression*) _tmp147_, "self");
1796
cself = (_tmp149_ = _tmp148_, _vala_ccode_node_unref0 (_tmp147_), _g_free0 (_tmp145_), _tmp149_);
1797
_tmp150_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1798
_tmp151_ = vala_ccode_base_module_get_current_class ((ValaCCodeBaseModule*) self);
1799
_tmp152_ = vala_typesymbol_get_cname ((ValaTypeSymbol*) _tmp151_, FALSE);
1800
_tmp153_ = _tmp152_;
1801
_tmp154_ = g_strdup_printf ("%s *", _tmp153_);
1802
_tmp155_ = _tmp154_;
1803
_tmp156_ = vala_ccode_variable_declarator_new ("self", NULL, NULL);
1804
_tmp157_ = _tmp156_;
1805
vala_ccode_function_add_declaration (_tmp150_, _tmp155_, (ValaCCodeDeclarator*) _tmp157_, 0);
1806
_vala_ccode_node_unref0 (_tmp157_);
1807
_g_free0 (_tmp155_);
1808
_g_free0 (_tmp153_);
1809
_tmp158_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1810
_tmp159_ = vala_ccode_identifier_new ("self");
1811
_tmp160_ = _tmp159_;
1812
_tmp161_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp160_, (ValaCCodeExpression*) cself, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
1813
_tmp162_ = _tmp161_;
1814
vala_ccode_function_add_expression (_tmp158_, (ValaCCodeExpression*) _tmp162_);
1815
_vala_ccode_node_unref0 (_tmp162_);
1816
_vala_ccode_node_unref0 (_tmp160_);
1780
_tmp148_ = g_strdup_printf ("%s *", _tmp147_);
1781
_tmp149_ = _tmp148_;
1782
_tmp150_ = vala_ccode_variable_declarator_new ("self", NULL, NULL);
1783
_tmp151_ = _tmp150_;
1784
vala_ccode_function_add_declaration (_tmp144_, _tmp149_, (ValaCCodeDeclarator*) _tmp151_, 0);
1785
_vala_ccode_node_unref0 (_tmp151_);
1786
_g_free0 (_tmp149_);
1787
_g_free0 (_tmp147_);
1788
_tmp152_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1789
_tmp153_ = vala_ccode_identifier_new ("self");
1790
_tmp154_ = _tmp153_;
1791
_tmp155_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp154_, (ValaCCodeExpression*) cself, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
1792
_tmp156_ = _tmp155_;
1793
vala_ccode_function_add_expression (_tmp152_, (ValaCCodeExpression*) _tmp156_);
1794
_vala_ccode_node_unref0 (_tmp156_);
1795
_vala_ccode_node_unref0 (_tmp154_);
1817
1796
_vala_ccode_node_unref0 (cself);
1820
ValaList* _tmp163_ = NULL;
1799
ValaList* _tmp157_ = NULL;
1821
1800
ValaList* _type_param_list;
1823
1802
gint _type_param_size;
1824
1803
gint _type_param_index;
1825
_tmp163_ = vala_method_get_type_parameters (m);
1826
_type_param_list = _tmp163_;
1827
_tmp164_ = vala_collection_get_size ((ValaCollection*) _type_param_list);
1828
_type_param_size = _tmp164_;
1804
_tmp157_ = vala_method_get_type_parameters (m);
1805
_type_param_list = _tmp157_;
1806
_tmp158_ = vala_collection_get_size ((ValaCollection*) _type_param_list);
1807
_type_param_size = _tmp158_;
1829
1808
_type_param_index = -1;
1831
gpointer _tmp165_ = NULL;
1810
gpointer _tmp159_ = NULL;
1832
1811
ValaTypeParameter* type_param;
1833
1812
gchar* func_name;
1834
const gchar* _tmp166_ = NULL;
1835
gchar* _tmp167_ = NULL;
1837
gchar* _tmp169_ = NULL;
1839
ValaCCodeFunction* _tmp171_ = NULL;
1840
ValaCCodeVariableDeclarator* _tmp172_ = NULL;
1841
ValaCCodeVariableDeclarator* _tmp173_;
1842
ValaCCodeFunction* _tmp174_ = NULL;
1843
ValaCCodeIdentifier* _tmp175_ = NULL;
1844
ValaCCodeIdentifier* _tmp176_;
1845
gchar* _tmp177_ = NULL;
1847
ValaCCodeExpression* _tmp179_ = NULL;
1848
ValaCCodeExpression* _tmp180_;
1849
ValaCCodeMemberAccess* _tmp181_ = NULL;
1850
ValaCCodeMemberAccess* _tmp182_;
1851
ValaCCodeAssignment* _tmp183_ = NULL;
1852
ValaCCodeAssignment* _tmp184_;
1853
const gchar* _tmp185_ = NULL;
1854
gchar* _tmp186_ = NULL;
1856
gchar* _tmp188_ = NULL;
1858
ValaCCodeFunction* _tmp190_ = NULL;
1859
ValaCCodeVariableDeclarator* _tmp191_ = NULL;
1860
ValaCCodeVariableDeclarator* _tmp192_;
1861
ValaCCodeFunction* _tmp193_ = NULL;
1862
ValaCCodeIdentifier* _tmp194_ = NULL;
1863
ValaCCodeIdentifier* _tmp195_;
1864
gchar* _tmp196_ = NULL;
1866
ValaCCodeExpression* _tmp198_ = NULL;
1867
ValaCCodeExpression* _tmp199_;
1868
ValaCCodeMemberAccess* _tmp200_ = NULL;
1869
ValaCCodeMemberAccess* _tmp201_;
1870
ValaCCodeAssignment* _tmp202_ = NULL;
1871
ValaCCodeAssignment* _tmp203_;
1872
const gchar* _tmp204_ = NULL;
1873
gchar* _tmp205_ = NULL;
1875
gchar* _tmp207_ = NULL;
1877
ValaCCodeFunction* _tmp209_ = NULL;
1878
ValaCCodeVariableDeclarator* _tmp210_ = NULL;
1879
ValaCCodeVariableDeclarator* _tmp211_;
1880
ValaCCodeFunction* _tmp212_ = NULL;
1881
ValaCCodeIdentifier* _tmp213_ = NULL;
1882
ValaCCodeIdentifier* _tmp214_;
1883
gchar* _tmp215_ = NULL;
1885
ValaCCodeExpression* _tmp217_ = NULL;
1886
ValaCCodeExpression* _tmp218_;
1887
ValaCCodeMemberAccess* _tmp219_ = NULL;
1888
ValaCCodeMemberAccess* _tmp220_;
1889
ValaCCodeAssignment* _tmp221_ = NULL;
1890
ValaCCodeAssignment* _tmp222_;
1813
const gchar* _tmp160_ = NULL;
1814
gchar* _tmp161_ = NULL;
1816
gchar* _tmp163_ = NULL;
1818
ValaCCodeFunction* _tmp165_ = NULL;
1819
ValaCCodeVariableDeclarator* _tmp166_ = NULL;
1820
ValaCCodeVariableDeclarator* _tmp167_;
1821
ValaCCodeFunction* _tmp168_ = NULL;
1822
ValaCCodeIdentifier* _tmp169_ = NULL;
1823
ValaCCodeIdentifier* _tmp170_;
1824
gchar* _tmp171_ = NULL;
1826
ValaCCodeExpression* _tmp173_ = NULL;
1827
ValaCCodeExpression* _tmp174_;
1828
ValaCCodeMemberAccess* _tmp175_ = NULL;
1829
ValaCCodeMemberAccess* _tmp176_;
1830
ValaCCodeAssignment* _tmp177_ = NULL;
1831
ValaCCodeAssignment* _tmp178_;
1832
const gchar* _tmp179_ = NULL;
1833
gchar* _tmp180_ = NULL;
1835
gchar* _tmp182_ = NULL;
1837
ValaCCodeFunction* _tmp184_ = NULL;
1838
ValaCCodeVariableDeclarator* _tmp185_ = NULL;
1839
ValaCCodeVariableDeclarator* _tmp186_;
1840
ValaCCodeFunction* _tmp187_ = NULL;
1841
ValaCCodeIdentifier* _tmp188_ = NULL;
1842
ValaCCodeIdentifier* _tmp189_;
1843
gchar* _tmp190_ = NULL;
1845
ValaCCodeExpression* _tmp192_ = NULL;
1846
ValaCCodeExpression* _tmp193_;
1847
ValaCCodeMemberAccess* _tmp194_ = NULL;
1848
ValaCCodeMemberAccess* _tmp195_;
1849
ValaCCodeAssignment* _tmp196_ = NULL;
1850
ValaCCodeAssignment* _tmp197_;
1851
const gchar* _tmp198_ = NULL;
1852
gchar* _tmp199_ = NULL;
1854
gchar* _tmp201_ = NULL;
1856
ValaCCodeFunction* _tmp203_ = NULL;
1857
ValaCCodeVariableDeclarator* _tmp204_ = NULL;
1858
ValaCCodeVariableDeclarator* _tmp205_;
1859
ValaCCodeFunction* _tmp206_ = NULL;
1860
ValaCCodeIdentifier* _tmp207_ = NULL;
1861
ValaCCodeIdentifier* _tmp208_;
1862
gchar* _tmp209_ = NULL;
1864
ValaCCodeExpression* _tmp211_ = NULL;
1865
ValaCCodeExpression* _tmp212_;
1866
ValaCCodeMemberAccess* _tmp213_ = NULL;
1867
ValaCCodeMemberAccess* _tmp214_;
1868
ValaCCodeAssignment* _tmp215_ = NULL;
1869
ValaCCodeAssignment* _tmp216_;
1891
1870
_type_param_index = _type_param_index + 1;
1892
1871
if (!(_type_param_index < _type_param_size)) {
1895
_tmp165_ = vala_list_get (_type_param_list, _type_param_index);
1896
type_param = (ValaTypeParameter*) _tmp165_;
1874
_tmp159_ = vala_list_get (_type_param_list, _type_param_index);
1875
type_param = (ValaTypeParameter*) _tmp159_;
1897
1876
func_name = NULL;
1898
_tmp166_ = vala_symbol_get_name ((ValaSymbol*) type_param);
1899
_tmp167_ = g_utf8_strdown (_tmp166_, (gssize) (-1));
1900
_tmp168_ = _tmp167_;
1901
_tmp169_ = g_strdup_printf ("%s_type", _tmp168_);
1877
_tmp160_ = vala_symbol_get_name ((ValaSymbol*) type_param);
1878
_tmp161_ = g_utf8_strdown (_tmp160_, (gssize) (-1));
1879
_tmp162_ = _tmp161_;
1880
_tmp163_ = g_strdup_printf ("%s_type", _tmp162_);
1881
_tmp164_ = _tmp163_;
1882
_g_free0 (func_name);
1883
func_name = _tmp164_;
1884
_g_free0 (_tmp162_);
1885
_tmp165_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1886
_tmp166_ = vala_ccode_variable_declarator_new (func_name, NULL, NULL);
1887
_tmp167_ = _tmp166_;
1888
vala_ccode_function_add_declaration (_tmp165_, "GType", (ValaCCodeDeclarator*) _tmp167_, 0);
1889
_vala_ccode_node_unref0 (_tmp167_);
1890
_tmp168_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1891
_tmp169_ = vala_ccode_identifier_new (func_name);
1902
1892
_tmp170_ = _tmp169_;
1903
_g_free0 (func_name);
1904
func_name = _tmp170_;
1905
_g_free0 (_tmp168_);
1906
_tmp171_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1907
_tmp172_ = vala_ccode_variable_declarator_new (func_name, NULL, NULL);
1908
_tmp173_ = _tmp172_;
1909
vala_ccode_function_add_declaration (_tmp171_, "GType", (ValaCCodeDeclarator*) _tmp173_, 0);
1910
_vala_ccode_node_unref0 (_tmp173_);
1911
_tmp174_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1912
_tmp175_ = vala_ccode_identifier_new (func_name);
1893
_tmp171_ = g_strdup_printf ("_data%d_", block_id);
1894
_tmp172_ = _tmp171_;
1895
_tmp173_ = vala_ccode_base_module_get_variable_cexpression ((ValaCCodeBaseModule*) self, _tmp172_);
1896
_tmp174_ = _tmp173_;
1897
_tmp175_ = vala_ccode_member_access_new_pointer (_tmp174_, func_name);
1913
1898
_tmp176_ = _tmp175_;
1914
_tmp177_ = g_strdup_printf ("_data%d_", block_id);
1899
_tmp177_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp170_, (ValaCCodeExpression*) _tmp176_, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
1915
1900
_tmp178_ = _tmp177_;
1916
_tmp179_ = vala_ccode_base_module_get_variable_cexpression ((ValaCCodeBaseModule*) self, _tmp178_);
1917
_tmp180_ = _tmp179_;
1918
_tmp181_ = vala_ccode_member_access_new_pointer (_tmp180_, func_name);
1919
_tmp182_ = _tmp181_;
1920
_tmp183_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp176_, (ValaCCodeExpression*) _tmp182_, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
1921
_tmp184_ = _tmp183_;
1922
vala_ccode_function_add_expression (_tmp174_, (ValaCCodeExpression*) _tmp184_);
1923
_vala_ccode_node_unref0 (_tmp184_);
1924
_vala_ccode_node_unref0 (_tmp182_);
1925
_vala_ccode_node_unref0 (_tmp180_);
1926
_g_free0 (_tmp178_);
1901
vala_ccode_function_add_expression (_tmp168_, (ValaCCodeExpression*) _tmp178_);
1902
_vala_ccode_node_unref0 (_tmp178_);
1927
1903
_vala_ccode_node_unref0 (_tmp176_);
1928
_tmp185_ = vala_symbol_get_name ((ValaSymbol*) type_param);
1929
_tmp186_ = g_utf8_strdown (_tmp185_, (gssize) (-1));
1930
_tmp187_ = _tmp186_;
1931
_tmp188_ = g_strdup_printf ("%s_dup_func", _tmp187_);
1904
_vala_ccode_node_unref0 (_tmp174_);
1905
_g_free0 (_tmp172_);
1906
_vala_ccode_node_unref0 (_tmp170_);
1907
_tmp179_ = vala_symbol_get_name ((ValaSymbol*) type_param);
1908
_tmp180_ = g_utf8_strdown (_tmp179_, (gssize) (-1));
1909
_tmp181_ = _tmp180_;
1910
_tmp182_ = g_strdup_printf ("%s_dup_func", _tmp181_);
1911
_tmp183_ = _tmp182_;
1912
_g_free0 (func_name);
1913
func_name = _tmp183_;
1914
_g_free0 (_tmp181_);
1915
_tmp184_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1916
_tmp185_ = vala_ccode_variable_declarator_new (func_name, NULL, NULL);
1917
_tmp186_ = _tmp185_;
1918
vala_ccode_function_add_declaration (_tmp184_, "GBoxedCopyFunc", (ValaCCodeDeclarator*) _tmp186_, 0);
1919
_vala_ccode_node_unref0 (_tmp186_);
1920
_tmp187_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1921
_tmp188_ = vala_ccode_identifier_new (func_name);
1932
1922
_tmp189_ = _tmp188_;
1933
_g_free0 (func_name);
1934
func_name = _tmp189_;
1935
_g_free0 (_tmp187_);
1936
_tmp190_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1937
_tmp191_ = vala_ccode_variable_declarator_new (func_name, NULL, NULL);
1938
_tmp192_ = _tmp191_;
1939
vala_ccode_function_add_declaration (_tmp190_, "GBoxedCopyFunc", (ValaCCodeDeclarator*) _tmp192_, 0);
1940
_vala_ccode_node_unref0 (_tmp192_);
1941
_tmp193_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1942
_tmp194_ = vala_ccode_identifier_new (func_name);
1923
_tmp190_ = g_strdup_printf ("_data%d_", block_id);
1924
_tmp191_ = _tmp190_;
1925
_tmp192_ = vala_ccode_base_module_get_variable_cexpression ((ValaCCodeBaseModule*) self, _tmp191_);
1926
_tmp193_ = _tmp192_;
1927
_tmp194_ = vala_ccode_member_access_new_pointer (_tmp193_, func_name);
1943
1928
_tmp195_ = _tmp194_;
1944
_tmp196_ = g_strdup_printf ("_data%d_", block_id);
1929
_tmp196_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp189_, (ValaCCodeExpression*) _tmp195_, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
1945
1930
_tmp197_ = _tmp196_;
1946
_tmp198_ = vala_ccode_base_module_get_variable_cexpression ((ValaCCodeBaseModule*) self, _tmp197_);
1947
_tmp199_ = _tmp198_;
1948
_tmp200_ = vala_ccode_member_access_new_pointer (_tmp199_, func_name);
1949
_tmp201_ = _tmp200_;
1950
_tmp202_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp195_, (ValaCCodeExpression*) _tmp201_, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
1951
_tmp203_ = _tmp202_;
1952
vala_ccode_function_add_expression (_tmp193_, (ValaCCodeExpression*) _tmp203_);
1953
_vala_ccode_node_unref0 (_tmp203_);
1954
_vala_ccode_node_unref0 (_tmp201_);
1955
_vala_ccode_node_unref0 (_tmp199_);
1956
_g_free0 (_tmp197_);
1931
vala_ccode_function_add_expression (_tmp187_, (ValaCCodeExpression*) _tmp197_);
1932
_vala_ccode_node_unref0 (_tmp197_);
1957
1933
_vala_ccode_node_unref0 (_tmp195_);
1958
_tmp204_ = vala_symbol_get_name ((ValaSymbol*) type_param);
1959
_tmp205_ = g_utf8_strdown (_tmp204_, (gssize) (-1));
1960
_tmp206_ = _tmp205_;
1961
_tmp207_ = g_strdup_printf ("%s_destroy_func", _tmp206_);
1934
_vala_ccode_node_unref0 (_tmp193_);
1935
_g_free0 (_tmp191_);
1936
_vala_ccode_node_unref0 (_tmp189_);
1937
_tmp198_ = vala_symbol_get_name ((ValaSymbol*) type_param);
1938
_tmp199_ = g_utf8_strdown (_tmp198_, (gssize) (-1));
1939
_tmp200_ = _tmp199_;
1940
_tmp201_ = g_strdup_printf ("%s_destroy_func", _tmp200_);
1941
_tmp202_ = _tmp201_;
1942
_g_free0 (func_name);
1943
func_name = _tmp202_;
1944
_g_free0 (_tmp200_);
1945
_tmp203_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1946
_tmp204_ = vala_ccode_variable_declarator_new (func_name, NULL, NULL);
1947
_tmp205_ = _tmp204_;
1948
vala_ccode_function_add_declaration (_tmp203_, "GDestroyNotify", (ValaCCodeDeclarator*) _tmp205_, 0);
1949
_vala_ccode_node_unref0 (_tmp205_);
1950
_tmp206_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1951
_tmp207_ = vala_ccode_identifier_new (func_name);
1962
1952
_tmp208_ = _tmp207_;
1963
_g_free0 (func_name);
1964
func_name = _tmp208_;
1965
_g_free0 (_tmp206_);
1966
_tmp209_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1967
_tmp210_ = vala_ccode_variable_declarator_new (func_name, NULL, NULL);
1968
_tmp211_ = _tmp210_;
1969
vala_ccode_function_add_declaration (_tmp209_, "GDestroyNotify", (ValaCCodeDeclarator*) _tmp211_, 0);
1970
_vala_ccode_node_unref0 (_tmp211_);
1971
_tmp212_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
1972
_tmp213_ = vala_ccode_identifier_new (func_name);
1953
_tmp209_ = g_strdup_printf ("_data%d_", block_id);
1954
_tmp210_ = _tmp209_;
1955
_tmp211_ = vala_ccode_base_module_get_variable_cexpression ((ValaCCodeBaseModule*) self, _tmp210_);
1956
_tmp212_ = _tmp211_;
1957
_tmp213_ = vala_ccode_member_access_new_pointer (_tmp212_, func_name);
1973
1958
_tmp214_ = _tmp213_;
1974
_tmp215_ = g_strdup_printf ("_data%d_", block_id);
1959
_tmp215_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp208_, (ValaCCodeExpression*) _tmp214_, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
1975
1960
_tmp216_ = _tmp215_;
1976
_tmp217_ = vala_ccode_base_module_get_variable_cexpression ((ValaCCodeBaseModule*) self, _tmp216_);
1977
_tmp218_ = _tmp217_;
1978
_tmp219_ = vala_ccode_member_access_new_pointer (_tmp218_, func_name);
1979
_tmp220_ = _tmp219_;
1980
_tmp221_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp214_, (ValaCCodeExpression*) _tmp220_, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
1981
_tmp222_ = _tmp221_;
1982
vala_ccode_function_add_expression (_tmp212_, (ValaCCodeExpression*) _tmp222_);
1983
_vala_ccode_node_unref0 (_tmp222_);
1984
_vala_ccode_node_unref0 (_tmp220_);
1985
_vala_ccode_node_unref0 (_tmp218_);
1986
_g_free0 (_tmp216_);
1961
vala_ccode_function_add_expression (_tmp206_, (ValaCCodeExpression*) _tmp216_);
1962
_vala_ccode_node_unref0 (_tmp216_);
1987
1963
_vala_ccode_node_unref0 (_tmp214_);
1964
_vala_ccode_node_unref0 (_tmp212_);
1965
_g_free0 (_tmp210_);
1966
_vala_ccode_node_unref0 (_tmp208_);
1988
1967
_g_free0 (func_name);
1989
1968
_vala_code_node_unref0 (type_param);
1993
1972
_vala_code_node_unref0 (closure_block);
1995
gboolean _tmp223_ = FALSE;
1996
ValaSymbol* _tmp224_ = NULL;
1997
_tmp224_ = vala_symbol_get_parent_symbol ((ValaSymbol*) m);
1998
if (VALA_IS_CLASS (_tmp224_)) {
2000
_tmp225_ = vala_method_get_coroutine (m);
2001
_tmp223_ = !_tmp225_;
1974
gboolean _tmp217_ = FALSE;
1975
ValaSymbol* _tmp218_ = NULL;
1976
_tmp218_ = vala_symbol_get_parent_symbol ((ValaSymbol*) m);
1977
if (VALA_IS_CLASS (_tmp218_)) {
1979
_tmp219_ = vala_method_get_coroutine (m);
1980
_tmp217_ = !_tmp219_;
2006
ValaSymbol* _tmp226_ = NULL;
2007
ValaClass* _tmp227_;
1985
ValaSymbol* _tmp220_ = NULL;
1986
ValaClass* _tmp221_;
2009
gboolean _tmp228_ = FALSE;
2011
_tmp226_ = vala_symbol_get_parent_symbol ((ValaSymbol*) m);
2012
_tmp227_ = _vala_code_node_ref0 (VALA_CLASS (_tmp226_));
2014
_tmp229_ = vala_method_get_overrides (m);
1988
gboolean _tmp222_ = FALSE;
1990
_tmp220_ = vala_symbol_get_parent_symbol ((ValaSymbol*) m);
1991
_tmp221_ = _vala_code_node_ref0 (VALA_CLASS (_tmp220_));
1993
_tmp223_ = vala_method_get_overrides (m);
2018
gboolean _tmp230_ = FALSE;
2019
gboolean _tmp231_ = FALSE;
2020
ValaMethod* _tmp232_ = NULL;
2021
_tmp232_ = vala_method_get_base_interface_method (m);
2022
if (_tmp232_ != NULL) {
2024
_tmp233_ = vala_method_get_is_abstract (m);
2025
_tmp231_ = !_tmp233_;
2031
_tmp234_ = vala_method_get_is_virtual (m);
2032
_tmp230_ = !_tmp234_;
2036
_tmp228_ = _tmp230_;
1997
gboolean _tmp224_ = FALSE;
1998
gboolean _tmp225_ = FALSE;
1999
ValaMethod* _tmp226_ = NULL;
2000
_tmp226_ = vala_method_get_base_interface_method (m);
2001
if (_tmp226_ != NULL) {
2003
_tmp227_ = vala_method_get_is_abstract (m);
2004
_tmp225_ = !_tmp227_;
2010
_tmp228_ = vala_method_get_is_virtual (m);
2011
_tmp224_ = !_tmp228_;
2015
_tmp222_ = _tmp224_;
2039
2018
ValaMethod* base_method;
2040
2019
ValaReferenceType* base_expression_type;
2042
ValaObjectType* _tmp248_ = NULL;
2021
ValaObjectType* _tmp242_ = NULL;
2043
2022
ValaObjectType* self_target_type;
2044
ValaCCodeIdentifier* _tmp249_ = NULL;
2045
ValaCCodeIdentifier* _tmp250_;
2046
ValaCCodeExpression* _tmp251_ = NULL;
2047
ValaCCodeExpression* _tmp252_;
2023
ValaCCodeIdentifier* _tmp243_ = NULL;
2024
ValaCCodeIdentifier* _tmp244_;
2025
ValaCCodeExpression* _tmp245_ = NULL;
2026
ValaCCodeExpression* _tmp246_;
2048
2027
ValaCCodeExpression* cself;
2049
ValaCCodeFunction* _tmp253_ = NULL;
2050
gchar* _tmp254_ = NULL;
2052
gchar* _tmp256_ = NULL;
2054
ValaCCodeVariableDeclarator* _tmp258_ = NULL;
2055
ValaCCodeVariableDeclarator* _tmp259_;
2056
ValaCCodeFunction* _tmp260_ = NULL;
2057
ValaCCodeIdentifier* _tmp261_ = NULL;
2058
ValaCCodeIdentifier* _tmp262_;
2059
ValaCCodeAssignment* _tmp263_ = NULL;
2060
ValaCCodeAssignment* _tmp264_;
2028
ValaCCodeFunction* _tmp247_ = NULL;
2029
gchar* _tmp248_ = NULL;
2031
gchar* _tmp250_ = NULL;
2033
ValaCCodeVariableDeclarator* _tmp252_ = NULL;
2034
ValaCCodeVariableDeclarator* _tmp253_;
2035
ValaCCodeFunction* _tmp254_ = NULL;
2036
ValaCCodeIdentifier* _tmp255_ = NULL;
2037
ValaCCodeIdentifier* _tmp256_;
2038
ValaCCodeAssignment* _tmp257_ = NULL;
2039
ValaCCodeAssignment* _tmp258_;
2061
2040
base_method = NULL;
2062
2041
base_expression_type = NULL;
2063
_tmp235_ = vala_method_get_overrides (m);
2042
_tmp229_ = vala_method_get_overrides (m);
2044
ValaMethod* _tmp230_ = NULL;
2045
ValaMethod* _tmp231_;
2046
ValaMethod* _tmp232_;
2047
ValaSymbol* _tmp233_ = NULL;
2048
ValaObjectType* _tmp234_ = NULL;
2049
ValaReferenceType* _tmp235_;
2050
_tmp230_ = vala_method_get_base_method (m);
2051
_tmp231_ = _vala_code_node_ref0 (_tmp230_);
2052
_tmp232_ = _tmp231_;
2053
_vala_code_node_unref0 (base_method);
2054
base_method = _tmp232_;
2055
_tmp233_ = vala_symbol_get_parent_symbol ((ValaSymbol*) base_method);
2056
_tmp234_ = vala_object_type_new ((ValaObjectTypeSymbol*) VALA_CLASS (_tmp233_));
2057
_tmp235_ = (ValaReferenceType*) _tmp234_;
2058
_vala_code_node_unref0 (base_expression_type);
2059
base_expression_type = _tmp235_;
2065
2061
ValaMethod* _tmp236_ = NULL;
2066
2062
ValaMethod* _tmp237_;
2067
2063
ValaMethod* _tmp238_;
2068
2064
ValaSymbol* _tmp239_ = NULL;
2069
2065
ValaObjectType* _tmp240_ = NULL;
2070
2066
ValaReferenceType* _tmp241_;
2071
_tmp236_ = vala_method_get_base_method (m);
2067
_tmp236_ = vala_method_get_base_interface_method (m);
2072
2068
_tmp237_ = _vala_code_node_ref0 (_tmp236_);
2073
2069
_tmp238_ = _tmp237_;
2074
2070
_vala_code_node_unref0 (base_method);
2075
2071
base_method = _tmp238_;
2076
2072
_tmp239_ = vala_symbol_get_parent_symbol ((ValaSymbol*) base_method);
2077
_tmp240_ = vala_object_type_new ((ValaObjectTypeSymbol*) VALA_CLASS (_tmp239_));
2073
_tmp240_ = vala_object_type_new ((ValaObjectTypeSymbol*) VALA_INTERFACE (_tmp239_));
2078
2074
_tmp241_ = (ValaReferenceType*) _tmp240_;
2079
2075
_vala_code_node_unref0 (base_expression_type);
2080
2076
base_expression_type = _tmp241_;
2082
ValaMethod* _tmp242_ = NULL;
2083
ValaMethod* _tmp243_;
2084
ValaMethod* _tmp244_;
2085
ValaSymbol* _tmp245_ = NULL;
2086
ValaObjectType* _tmp246_ = NULL;
2087
ValaReferenceType* _tmp247_;
2088
_tmp242_ = vala_method_get_base_interface_method (m);
2089
_tmp243_ = _vala_code_node_ref0 (_tmp242_);
2090
_tmp244_ = _tmp243_;
2091
_vala_code_node_unref0 (base_method);
2092
base_method = _tmp244_;
2093
_tmp245_ = vala_symbol_get_parent_symbol ((ValaSymbol*) base_method);
2094
_tmp246_ = vala_object_type_new ((ValaObjectTypeSymbol*) VALA_INTERFACE (_tmp245_));
2095
_tmp247_ = (ValaReferenceType*) _tmp246_;
2096
_vala_code_node_unref0 (base_expression_type);
2097
base_expression_type = _tmp247_;
2099
_tmp248_ = vala_object_type_new ((ValaObjectTypeSymbol*) cl);
2100
self_target_type = _tmp248_;
2101
_tmp249_ = vala_ccode_identifier_new ("base");
2102
_tmp250_ = _tmp249_;
2103
_tmp251_ = vala_ccode_base_module_transform_expression ((ValaCCodeBaseModule*) self, (ValaCCodeExpression*) _tmp250_, (ValaDataType*) base_expression_type, (ValaDataType*) self_target_type, NULL);
2104
cself = (_tmp252_ = _tmp251_, _vala_ccode_node_unref0 (_tmp250_), _tmp252_);
2105
_tmp253_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2106
_tmp254_ = vala_typesymbol_get_cname ((ValaTypeSymbol*) cl, FALSE);
2107
_tmp255_ = _tmp254_;
2108
_tmp256_ = g_strdup_printf ("%s *", _tmp255_);
2109
_tmp257_ = _tmp256_;
2110
_tmp258_ = vala_ccode_variable_declarator_new ("self", NULL, NULL);
2111
_tmp259_ = _tmp258_;
2112
vala_ccode_function_add_declaration (_tmp253_, _tmp257_, (ValaCCodeDeclarator*) _tmp259_, 0);
2113
_vala_ccode_node_unref0 (_tmp259_);
2114
_g_free0 (_tmp257_);
2115
_g_free0 (_tmp255_);
2116
_tmp260_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2117
_tmp261_ = vala_ccode_identifier_new ("self");
2118
_tmp262_ = _tmp261_;
2119
_tmp263_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp262_, cself, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
2120
_tmp264_ = _tmp263_;
2121
vala_ccode_function_add_expression (_tmp260_, (ValaCCodeExpression*) _tmp264_);
2122
_vala_ccode_node_unref0 (_tmp264_);
2123
_vala_ccode_node_unref0 (_tmp262_);
2078
_tmp242_ = vala_object_type_new ((ValaObjectTypeSymbol*) cl);
2079
self_target_type = _tmp242_;
2080
_tmp243_ = vala_ccode_identifier_new ("base");
2081
_tmp244_ = _tmp243_;
2082
_tmp245_ = vala_ccode_base_module_transform_expression ((ValaCCodeBaseModule*) self, (ValaCCodeExpression*) _tmp244_, (ValaDataType*) base_expression_type, (ValaDataType*) self_target_type, NULL);
2083
cself = (_tmp246_ = _tmp245_, _vala_ccode_node_unref0 (_tmp244_), _tmp246_);
2084
_tmp247_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2085
_tmp248_ = vala_typesymbol_get_cname ((ValaTypeSymbol*) cl, FALSE);
2086
_tmp249_ = _tmp248_;
2087
_tmp250_ = g_strdup_printf ("%s *", _tmp249_);
2088
_tmp251_ = _tmp250_;
2089
_tmp252_ = vala_ccode_variable_declarator_new ("self", NULL, NULL);
2090
_tmp253_ = _tmp252_;
2091
vala_ccode_function_add_declaration (_tmp247_, _tmp251_, (ValaCCodeDeclarator*) _tmp253_, 0);
2092
_vala_ccode_node_unref0 (_tmp253_);
2093
_g_free0 (_tmp251_);
2094
_g_free0 (_tmp249_);
2095
_tmp254_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2096
_tmp255_ = vala_ccode_identifier_new ("self");
2097
_tmp256_ = _tmp255_;
2098
_tmp257_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp256_, cself, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
2099
_tmp258_ = _tmp257_;
2100
vala_ccode_function_add_expression (_tmp254_, (ValaCCodeExpression*) _tmp258_);
2101
_vala_ccode_node_unref0 (_tmp258_);
2102
_vala_ccode_node_unref0 (_tmp256_);
2124
2103
_vala_ccode_node_unref0 (cself);
2125
2104
_vala_code_node_unref0 (self_target_type);
2126
2105
_vala_code_node_unref0 (base_expression_type);
2127
2106
_vala_code_node_unref0 (base_method);
2129
gboolean _tmp265_ = FALSE;
2130
ValaMemberBinding _tmp266_;
2131
_tmp266_ = vala_method_get_binding (m);
2132
if (_tmp266_ == VALA_MEMBER_BINDING_INSTANCE) {
2133
_tmp265_ = !VALA_IS_CREATION_METHOD (m);
2108
gboolean _tmp259_ = FALSE;
2109
ValaMemberBinding _tmp260_;
2110
_tmp260_ = vala_method_get_binding (m);
2111
if (_tmp260_ == VALA_MEMBER_BINDING_INSTANCE) {
2112
_tmp259_ = !VALA_IS_CREATION_METHOD (m);
2138
2117
vala_ccode_method_module_create_method_type_check_statement (self, m, creturn_type, (ValaTypeSymbol*) cl, TRUE, "self");
2145
ValaList* _tmp267_ = NULL;
2124
ValaList* _tmp261_ = NULL;
2146
2125
ValaList* _param_list;
2148
2127
gint _param_size;
2149
2128
gint _param_index;
2150
_tmp267_ = vala_method_get_parameters (m);
2151
_param_list = _tmp267_;
2152
_tmp268_ = vala_collection_get_size ((ValaCollection*) _param_list);
2153
_param_size = _tmp268_;
2129
_tmp261_ = vala_method_get_parameters (m);
2130
_param_list = _tmp261_;
2131
_tmp262_ = vala_collection_get_size ((ValaCollection*) _param_list);
2132
_param_size = _tmp262_;
2154
2133
_param_index = -1;
2156
gpointer _tmp269_ = NULL;
2135
gpointer _tmp263_ = NULL;
2157
2136
ValaParameter* param;
2159
ValaParameterDirection _tmp271_;
2138
ValaParameterDirection _tmp265_;
2160
2139
_param_index = _param_index + 1;
2161
2140
if (!(_param_index < _param_size)) {
2164
_tmp269_ = vala_list_get (_param_list, _param_index);
2165
param = (ValaParameter*) _tmp269_;
2166
_tmp270_ = vala_parameter_get_ellipsis (param);
2143
_tmp263_ = vala_list_get (_param_list, _param_index);
2144
param = (ValaParameter*) _tmp263_;
2145
_tmp264_ = vala_parameter_get_ellipsis (param);
2168
2147
_vala_code_node_unref0 (param);
2171
_tmp271_ = vala_parameter_get_direction (param);
2172
if (_tmp271_ != VALA_PARAMETER_DIRECTION_OUT) {
2173
ValaDataType* _tmp272_ = NULL;
2174
ValaTypeSymbol* _tmp273_ = NULL;
2175
ValaTypeSymbol* _tmp274_;
2150
_tmp265_ = vala_parameter_get_direction (param);
2151
if (_tmp265_ != VALA_PARAMETER_DIRECTION_OUT) {
2152
ValaDataType* _tmp266_ = NULL;
2153
ValaTypeSymbol* _tmp267_ = NULL;
2154
ValaTypeSymbol* _tmp268_;
2176
2155
ValaTypeSymbol* t;
2177
gboolean _tmp275_ = FALSE;
2178
_tmp272_ = vala_variable_get_variable_type ((ValaVariable*) param);
2179
_tmp273_ = vala_data_type_get_data_type (_tmp272_);
2180
_tmp274_ = _vala_code_node_ref0 (_tmp273_);
2156
gboolean _tmp269_ = FALSE;
2157
_tmp266_ = vala_variable_get_variable_type ((ValaVariable*) param);
2158
_tmp267_ = vala_data_type_get_data_type (_tmp266_);
2159
_tmp268_ = _vala_code_node_ref0 (_tmp267_);
2182
2161
if (t != NULL) {
2184
_tmp276_ = vala_typesymbol_is_reference_type (t);
2185
_tmp275_ = _tmp276_;
2163
_tmp270_ = vala_typesymbol_is_reference_type (t);
2164
_tmp269_ = _tmp270_;
2190
ValaDataType* _tmp277_ = NULL;
2192
const gchar* _tmp279_ = NULL;
2193
gchar* _tmp280_ = NULL;
2195
_tmp277_ = vala_variable_get_variable_type ((ValaVariable*) param);
2196
_tmp278_ = vala_data_type_get_nullable (_tmp277_);
2197
_tmp279_ = vala_symbol_get_name ((ValaSymbol*) param);
2198
_tmp280_ = vala_ccode_base_module_get_variable_cname ((ValaCCodeBaseModule*) self, _tmp279_);
2199
_tmp281_ = _tmp280_;
2200
vala_ccode_method_module_create_method_type_check_statement (self, m, creturn_type, t, !_tmp278_, _tmp281_);
2201
_g_free0 (_tmp281_);
2169
ValaDataType* _tmp271_ = NULL;
2171
const gchar* _tmp273_ = NULL;
2172
gchar* _tmp274_ = NULL;
2174
_tmp271_ = vala_variable_get_variable_type ((ValaVariable*) param);
2175
_tmp272_ = vala_data_type_get_nullable (_tmp271_);
2176
_tmp273_ = vala_symbol_get_name ((ValaSymbol*) param);
2177
_tmp274_ = vala_ccode_base_module_get_variable_cname ((ValaCCodeBaseModule*) self, _tmp273_);
2178
_tmp275_ = _tmp274_;
2179
vala_ccode_method_module_create_method_type_check_statement (self, m, creturn_type, t, !_tmp272_, _tmp275_);
2180
_g_free0 (_tmp275_);
2203
2182
_vala_code_node_unref0 (t);
2206
_tmp282_ = vala_method_get_coroutine (m);
2208
const gchar* _tmp283_ = NULL;
2210
gchar* _tmp285_ = NULL;
2185
_tmp276_ = vala_method_get_coroutine (m);
2187
const gchar* _tmp277_ = NULL;
2189
gchar* _tmp279_ = NULL;
2191
ValaDataType* _tmp281_ = NULL;
2192
ValaCCodeExpression* _tmp282_ = NULL;
2193
ValaCCodeExpression* _tmp283_;
2194
ValaCCodeVariableDeclarator* _tmp284_ = NULL;
2195
ValaCCodeVariableDeclarator* _tmp285_;
2196
ValaCCodeVariableDeclarator* vardecl;
2197
ValaCCodeFunction* _tmp286_ = NULL;
2212
2198
ValaDataType* _tmp287_ = NULL;
2213
ValaCCodeExpression* _tmp288_ = NULL;
2214
ValaCCodeExpression* _tmp289_;
2215
ValaCCodeVariableDeclarator* _tmp290_ = NULL;
2216
ValaCCodeVariableDeclarator* _tmp291_;
2217
ValaCCodeVariableDeclarator* vardecl;
2218
ValaCCodeFunction* _tmp292_ = NULL;
2219
ValaDataType* _tmp293_ = NULL;
2220
gchar* _tmp294_ = NULL;
2222
ValaDataType* _tmp296_ = NULL;
2223
_tmp283_ = vala_symbol_get_name ((ValaSymbol*) param);
2224
_tmp284_ = g_strconcat ("_", _tmp283_, NULL);
2225
_tmp285_ = vala_ccode_base_module_get_variable_cname ((ValaCCodeBaseModule*) self, _tmp284_);
2226
_tmp286_ = _tmp285_;
2199
gchar* _tmp288_ = NULL;
2201
ValaDataType* _tmp290_ = NULL;
2202
_tmp277_ = vala_symbol_get_name ((ValaSymbol*) param);
2203
_tmp278_ = g_strconcat ("_", _tmp277_, NULL);
2204
_tmp279_ = vala_ccode_base_module_get_variable_cname ((ValaCCodeBaseModule*) self, _tmp278_);
2205
_tmp280_ = _tmp279_;
2206
_tmp281_ = vala_variable_get_variable_type ((ValaVariable*) param);
2207
_tmp282_ = vala_ccode_base_module_default_value_for_type ((ValaCCodeBaseModule*) self, _tmp281_, TRUE);
2208
_tmp283_ = _tmp282_;
2209
_tmp284_ = vala_ccode_variable_declarator_new_zero (_tmp280_, _tmp283_, NULL);
2210
vardecl = (_tmp285_ = _tmp284_, _vala_ccode_node_unref0 (_tmp283_), _g_free0 (_tmp280_), _g_free0 (_tmp278_), _tmp285_);
2211
_tmp286_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2227
2212
_tmp287_ = vala_variable_get_variable_type ((ValaVariable*) param);
2228
_tmp288_ = vala_ccode_base_module_default_value_for_type ((ValaCCodeBaseModule*) self, _tmp287_, TRUE);
2213
_tmp288_ = vala_data_type_get_cname (_tmp287_);
2229
2214
_tmp289_ = _tmp288_;
2230
_tmp290_ = vala_ccode_variable_declarator_new_zero (_tmp286_, _tmp289_, NULL);
2231
vardecl = (_tmp291_ = _tmp290_, _vala_ccode_node_unref0 (_tmp289_), _g_free0 (_tmp286_), _g_free0 (_tmp284_), _tmp291_);
2232
_tmp292_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2233
_tmp293_ = vala_variable_get_variable_type ((ValaVariable*) param);
2234
_tmp294_ = vala_data_type_get_cname (_tmp293_);
2235
_tmp295_ = _tmp294_;
2236
vala_ccode_function_add_declaration (_tmp292_, _tmp295_, (ValaCCodeDeclarator*) vardecl, 0);
2237
_g_free0 (_tmp295_);
2238
_tmp296_ = vala_variable_get_variable_type ((ValaVariable*) param);
2239
if (VALA_IS_ARRAY_TYPE (_tmp296_)) {
2240
ValaDataType* _tmp297_ = NULL;
2241
ValaArrayType* _tmp298_;
2215
vala_ccode_function_add_declaration (_tmp286_, _tmp289_, (ValaCCodeDeclarator*) vardecl, 0);
2216
_g_free0 (_tmp289_);
2217
_tmp290_ = vala_variable_get_variable_type ((ValaVariable*) param);
2218
if (VALA_IS_ARRAY_TYPE (_tmp290_)) {
2219
ValaDataType* _tmp291_ = NULL;
2220
ValaArrayType* _tmp292_;
2242
2221
ValaArrayType* array_type;
2244
_tmp297_ = vala_variable_get_variable_type ((ValaVariable*) param);
2245
_tmp298_ = _vala_code_node_ref0 (VALA_ARRAY_TYPE (_tmp297_));
2246
array_type = _tmp298_;
2247
_tmp299_ = vala_array_type_get_fixed_length (array_type);
2223
_tmp291_ = vala_variable_get_variable_type ((ValaVariable*) param);
2224
_tmp292_ = _vala_code_node_ref0 (VALA_ARRAY_TYPE (_tmp291_));
2225
array_type = _tmp292_;
2226
_tmp293_ = vala_array_type_get_fixed_length (array_type);
2257
const gchar* _tmp302_ = NULL;
2259
gchar* _tmp304_ = NULL;
2261
gchar* _tmp306_ = NULL;
2263
ValaCCodeConstant* _tmp308_ = NULL;
2264
ValaCCodeConstant* _tmp309_;
2265
ValaCCodeVariableDeclarator* _tmp310_ = NULL;
2266
ValaCCodeVariableDeclarator* _tmp311_;
2267
ValaCCodeFunction* _tmp312_ = NULL;
2236
const gchar* _tmp296_ = NULL;
2238
gchar* _tmp298_ = NULL;
2240
gchar* _tmp300_ = NULL;
2242
ValaCCodeConstant* _tmp302_ = NULL;
2243
ValaCCodeConstant* _tmp303_;
2244
ValaCCodeVariableDeclarator* _tmp304_ = NULL;
2245
ValaCCodeVariableDeclarator* _tmp305_;
2246
ValaCCodeFunction* _tmp306_ = NULL;
2272
_tmp301_ = vala_array_type_get_rank (array_type);
2273
if (!(dim <= _tmp301_)) {
2251
_tmp295_ = vala_array_type_get_rank (array_type);
2252
if (!(dim <= _tmp295_)) {
2276
_tmp302_ = vala_symbol_get_name ((ValaSymbol*) param);
2277
_tmp303_ = g_strconcat ("_", _tmp302_, NULL);
2278
_tmp304_ = vala_ccode_base_module_get_variable_cname ((ValaCCodeBaseModule*) self, _tmp303_);
2255
_tmp296_ = vala_symbol_get_name ((ValaSymbol*) param);
2256
_tmp297_ = g_strconcat ("_", _tmp296_, NULL);
2257
_tmp298_ = vala_ccode_base_module_get_variable_cname ((ValaCCodeBaseModule*) self, _tmp297_);
2258
_tmp299_ = _tmp298_;
2259
_tmp300_ = vala_ccode_base_module_get_array_length_cname ((ValaCCodeBaseModule*) self, _tmp299_, dim);
2260
_tmp301_ = _tmp300_;
2261
_tmp302_ = vala_ccode_constant_new ("0");
2262
_tmp303_ = _tmp302_;
2263
_tmp304_ = vala_ccode_variable_declarator_new_zero (_tmp301_, (ValaCCodeExpression*) _tmp303_, NULL);
2279
2264
_tmp305_ = _tmp304_;
2280
_tmp306_ = vala_ccode_base_module_get_array_length_cname ((ValaCCodeBaseModule*) self, _tmp305_, dim);
2281
_tmp307_ = _tmp306_;
2282
_tmp308_ = vala_ccode_constant_new ("0");
2283
_tmp309_ = _tmp308_;
2284
_tmp310_ = vala_ccode_variable_declarator_new_zero (_tmp307_, (ValaCCodeExpression*) _tmp309_, NULL);
2285
_tmp311_ = _tmp310_;
2286
2265
_vala_ccode_node_unref0 (vardecl);
2288
_vala_ccode_node_unref0 (_tmp309_);
2289
_g_free0 (_tmp307_);
2290
_g_free0 (_tmp305_);
2291
_g_free0 (_tmp303_);
2292
_tmp312_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2293
vala_ccode_function_add_declaration (_tmp312_, "int", (ValaCCodeDeclarator*) vardecl, 0);
2267
_vala_ccode_node_unref0 (_tmp303_);
2268
_g_free0 (_tmp301_);
2269
_g_free0 (_tmp299_);
2270
_g_free0 (_tmp297_);
2271
_tmp306_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2272
vala_ccode_function_add_declaration (_tmp306_, "int", (ValaCCodeDeclarator*) vardecl, 0);
2298
2277
_vala_code_node_unref0 (array_type);
2300
ValaDataType* _tmp313_ = NULL;
2301
_tmp313_ = vala_variable_get_variable_type ((ValaVariable*) param);
2302
if (VALA_IS_DELEGATE_TYPE (_tmp313_)) {
2303
ValaDataType* _tmp314_ = NULL;
2304
ValaDelegateType* _tmp315_;
2279
ValaDataType* _tmp307_ = NULL;
2280
_tmp307_ = vala_variable_get_variable_type ((ValaVariable*) param);
2281
if (VALA_IS_DELEGATE_TYPE (_tmp307_)) {
2282
ValaDataType* _tmp308_ = NULL;
2283
ValaDelegateType* _tmp309_;
2305
2284
ValaDelegateType* deleg_type;
2306
ValaDelegate* _tmp316_ = NULL;
2307
ValaDelegate* _tmp317_;
2285
ValaDelegate* _tmp310_ = NULL;
2286
ValaDelegate* _tmp311_;
2308
2287
ValaDelegate* d;
2310
_tmp314_ = vala_variable_get_variable_type ((ValaVariable*) param);
2311
_tmp315_ = _vala_code_node_ref0 (VALA_DELEGATE_TYPE (_tmp314_));
2312
deleg_type = _tmp315_;
2313
_tmp316_ = vala_delegate_type_get_delegate_symbol (deleg_type);
2314
_tmp317_ = _vala_code_node_ref0 (_tmp316_);
2316
_tmp318_ = vala_delegate_get_has_target (d);
2318
const gchar* _tmp319_ = NULL;
2320
gchar* _tmp321_ = NULL;
2322
gchar* _tmp323_ = NULL;
2324
ValaCCodeConstant* _tmp325_ = NULL;
2325
ValaCCodeConstant* _tmp326_;
2326
ValaCCodeVariableDeclarator* _tmp327_ = NULL;
2327
ValaCCodeVariableDeclarator* _tmp328_;
2328
ValaCCodeFunction* _tmp329_ = NULL;
2330
_tmp319_ = vala_symbol_get_name ((ValaSymbol*) param);
2331
_tmp320_ = g_strconcat ("_", _tmp319_, NULL);
2332
_tmp321_ = vala_ccode_base_module_get_variable_cname ((ValaCCodeBaseModule*) self, _tmp320_);
2289
_tmp308_ = vala_variable_get_variable_type ((ValaVariable*) param);
2290
_tmp309_ = _vala_code_node_ref0 (VALA_DELEGATE_TYPE (_tmp308_));
2291
deleg_type = _tmp309_;
2292
_tmp310_ = vala_delegate_type_get_delegate_symbol (deleg_type);
2293
_tmp311_ = _vala_code_node_ref0 (_tmp310_);
2295
_tmp312_ = vala_delegate_get_has_target (d);
2297
const gchar* _tmp313_ = NULL;
2299
gchar* _tmp315_ = NULL;
2301
gchar* _tmp317_ = NULL;
2303
ValaCCodeConstant* _tmp319_ = NULL;
2304
ValaCCodeConstant* _tmp320_;
2305
ValaCCodeVariableDeclarator* _tmp321_ = NULL;
2306
ValaCCodeVariableDeclarator* _tmp322_;
2307
ValaCCodeFunction* _tmp323_ = NULL;
2309
_tmp313_ = vala_symbol_get_name ((ValaSymbol*) param);
2310
_tmp314_ = g_strconcat ("_", _tmp313_, NULL);
2311
_tmp315_ = vala_ccode_base_module_get_variable_cname ((ValaCCodeBaseModule*) self, _tmp314_);
2312
_tmp316_ = _tmp315_;
2313
_tmp317_ = vala_ccode_base_module_get_delegate_target_cname ((ValaCCodeBaseModule*) self, _tmp316_);
2314
_tmp318_ = _tmp317_;
2315
_tmp319_ = vala_ccode_constant_new ("NULL");
2316
_tmp320_ = _tmp319_;
2317
_tmp321_ = vala_ccode_variable_declarator_new_zero (_tmp318_, (ValaCCodeExpression*) _tmp320_, NULL);
2333
2318
_tmp322_ = _tmp321_;
2334
_tmp323_ = vala_ccode_base_module_get_delegate_target_cname ((ValaCCodeBaseModule*) self, _tmp322_);
2335
_tmp324_ = _tmp323_;
2336
_tmp325_ = vala_ccode_constant_new ("NULL");
2337
_tmp326_ = _tmp325_;
2338
_tmp327_ = vala_ccode_variable_declarator_new_zero (_tmp324_, (ValaCCodeExpression*) _tmp326_, NULL);
2339
_tmp328_ = _tmp327_;
2340
2319
_vala_ccode_node_unref0 (vardecl);
2342
_vala_ccode_node_unref0 (_tmp326_);
2343
_g_free0 (_tmp324_);
2344
_g_free0 (_tmp322_);
2345
_g_free0 (_tmp320_);
2346
_tmp329_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2347
vala_ccode_function_add_declaration (_tmp329_, "void *", (ValaCCodeDeclarator*) vardecl, 0);
2348
_tmp330_ = vala_data_type_get_value_owned ((ValaDataType*) deleg_type);
2350
const gchar* _tmp331_ = NULL;
2352
gchar* _tmp333_ = NULL;
2354
gchar* _tmp335_ = NULL;
2356
ValaCCodeConstant* _tmp337_ = NULL;
2357
ValaCCodeConstant* _tmp338_;
2358
ValaCCodeVariableDeclarator* _tmp339_ = NULL;
2359
ValaCCodeVariableDeclarator* _tmp340_;
2360
ValaCCodeFunction* _tmp341_ = NULL;
2361
_tmp331_ = vala_symbol_get_name ((ValaSymbol*) param);
2362
_tmp332_ = g_strconcat ("_", _tmp331_, NULL);
2363
_tmp333_ = vala_ccode_base_module_get_variable_cname ((ValaCCodeBaseModule*) self, _tmp332_);
2321
_vala_ccode_node_unref0 (_tmp320_);
2322
_g_free0 (_tmp318_);
2323
_g_free0 (_tmp316_);
2324
_g_free0 (_tmp314_);
2325
_tmp323_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2326
vala_ccode_function_add_declaration (_tmp323_, "void *", (ValaCCodeDeclarator*) vardecl, 0);
2327
_tmp324_ = vala_data_type_get_value_owned ((ValaDataType*) deleg_type);
2329
const gchar* _tmp325_ = NULL;
2331
gchar* _tmp327_ = NULL;
2333
gchar* _tmp329_ = NULL;
2335
ValaCCodeConstant* _tmp331_ = NULL;
2336
ValaCCodeConstant* _tmp332_;
2337
ValaCCodeVariableDeclarator* _tmp333_ = NULL;
2338
ValaCCodeVariableDeclarator* _tmp334_;
2339
ValaCCodeFunction* _tmp335_ = NULL;
2340
_tmp325_ = vala_symbol_get_name ((ValaSymbol*) param);
2341
_tmp326_ = g_strconcat ("_", _tmp325_, NULL);
2342
_tmp327_ = vala_ccode_base_module_get_variable_cname ((ValaCCodeBaseModule*) self, _tmp326_);
2343
_tmp328_ = _tmp327_;
2344
_tmp329_ = vala_ccode_base_module_get_delegate_target_destroy_notify_cname ((ValaCCodeBaseModule*) self, _tmp328_);
2345
_tmp330_ = _tmp329_;
2346
_tmp331_ = vala_ccode_constant_new ("NULL");
2347
_tmp332_ = _tmp331_;
2348
_tmp333_ = vala_ccode_variable_declarator_new_zero (_tmp330_, (ValaCCodeExpression*) _tmp332_, NULL);
2364
2349
_tmp334_ = _tmp333_;
2365
_tmp335_ = vala_ccode_base_module_get_delegate_target_destroy_notify_cname ((ValaCCodeBaseModule*) self, _tmp334_);
2366
_tmp336_ = _tmp335_;
2367
_tmp337_ = vala_ccode_constant_new ("NULL");
2368
_tmp338_ = _tmp337_;
2369
_tmp339_ = vala_ccode_variable_declarator_new_zero (_tmp336_, (ValaCCodeExpression*) _tmp338_, NULL);
2370
_tmp340_ = _tmp339_;
2371
2350
_vala_ccode_node_unref0 (vardecl);
2373
_vala_ccode_node_unref0 (_tmp338_);
2374
_g_free0 (_tmp336_);
2375
_g_free0 (_tmp334_);
2376
_g_free0 (_tmp332_);
2377
_tmp341_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2378
vala_ccode_function_add_declaration (_tmp341_, "GDestroyNotify", (ValaCCodeDeclarator*) vardecl, 0);
2352
_vala_ccode_node_unref0 (_tmp332_);
2353
_g_free0 (_tmp330_);
2354
_g_free0 (_tmp328_);
2355
_g_free0 (_tmp326_);
2356
_tmp335_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2357
vala_ccode_function_add_declaration (_tmp335_, "GDestroyNotify", (ValaCCodeDeclarator*) vardecl, 0);
2381
2360
_vala_code_node_unref0 (d);
2390
2369
_vala_iterable_unref0 (_param_list);
2392
_tmp344_ = vala_method_get_return_type (m);
2393
if (!VALA_IS_VOID_TYPE (_tmp344_)) {
2394
ValaDataType* _tmp345_ = NULL;
2396
_tmp345_ = vala_method_get_return_type (m);
2397
_tmp346_ = vala_data_type_is_real_non_null_struct_type (_tmp345_);
2398
_tmp343_ = !_tmp346_;
2404
_tmp347_ = vala_method_get_coroutine (m);
2405
_tmp342_ = !_tmp347_;
2371
_tmp338_ = vala_method_get_return_type (m);
2372
if (!VALA_IS_VOID_TYPE (_tmp338_)) {
2373
ValaDataType* _tmp339_ = NULL;
2375
_tmp339_ = vala_method_get_return_type (m);
2376
_tmp340_ = vala_data_type_is_real_non_null_struct_type (_tmp339_);
2377
_tmp337_ = !_tmp340_;
2383
_tmp341_ = vala_method_get_coroutine (m);
2384
_tmp336_ = !_tmp341_;
2389
ValaDataType* _tmp342_ = NULL;
2390
ValaCCodeExpression* _tmp343_ = NULL;
2391
ValaCCodeExpression* _tmp344_;
2392
ValaCCodeVariableDeclarator* _tmp345_ = NULL;
2393
ValaCCodeVariableDeclarator* _tmp346_;
2394
ValaCCodeVariableDeclarator* vardecl;
2395
ValaCCodeFunction* _tmp347_ = NULL;
2410
2396
ValaDataType* _tmp348_ = NULL;
2411
ValaCCodeExpression* _tmp349_ = NULL;
2412
ValaCCodeExpression* _tmp350_;
2413
ValaCCodeVariableDeclarator* _tmp351_ = NULL;
2414
ValaCCodeVariableDeclarator* _tmp352_;
2415
ValaCCodeVariableDeclarator* vardecl;
2416
ValaCCodeFunction* _tmp353_ = NULL;
2417
ValaDataType* _tmp354_ = NULL;
2418
gchar* _tmp355_ = NULL;
2397
gchar* _tmp349_ = NULL;
2399
_tmp342_ = vala_method_get_return_type (m);
2400
_tmp343_ = vala_ccode_base_module_default_value_for_type ((ValaCCodeBaseModule*) self, _tmp342_, TRUE);
2401
_tmp344_ = _tmp343_;
2402
_tmp345_ = vala_ccode_variable_declarator_new ("result", _tmp344_, NULL);
2403
vardecl = (_tmp346_ = _tmp345_, _vala_ccode_node_unref0 (_tmp344_), _tmp346_);
2404
vala_ccode_variable_declarator_set_init0 (vardecl, TRUE);
2405
_tmp347_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2420
2406
_tmp348_ = vala_method_get_return_type (m);
2421
_tmp349_ = vala_ccode_base_module_default_value_for_type ((ValaCCodeBaseModule*) self, _tmp348_, TRUE);
2407
_tmp349_ = vala_data_type_get_cname (_tmp348_);
2422
2408
_tmp350_ = _tmp349_;
2423
_tmp351_ = vala_ccode_variable_declarator_new ("result", _tmp350_, NULL);
2424
vardecl = (_tmp352_ = _tmp351_, _vala_ccode_node_unref0 (_tmp350_), _tmp352_);
2425
vala_ccode_variable_declarator_set_init0 (vardecl, TRUE);
2426
_tmp353_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2427
_tmp354_ = vala_method_get_return_type (m);
2428
_tmp355_ = vala_data_type_get_cname (_tmp354_);
2429
_tmp356_ = _tmp355_;
2430
vala_ccode_function_add_declaration (_tmp353_, _tmp356_, (ValaCCodeDeclarator*) vardecl, 0);
2431
_g_free0 (_tmp356_);
2409
vala_ccode_function_add_declaration (_tmp347_, _tmp350_, (ValaCCodeDeclarator*) vardecl, 0);
2410
_g_free0 (_tmp350_);
2432
2411
_vala_ccode_node_unref0 (vardecl);
2434
2413
if (VALA_IS_CREATION_METHOD (m)) {
2435
2414
if (in_gobject_creation_method) {
2436
ValaCCodeFunction* _tmp357_ = NULL;
2437
ValaTypeSymbol* _tmp358_ = NULL;
2438
gchar* _tmp359_ = NULL;
2440
gchar* _tmp361_ = NULL;
2442
ValaCCodeConstant* _tmp363_ = NULL;
2443
ValaCCodeConstant* _tmp364_;
2444
ValaCCodeVariableDeclarator* _tmp365_ = NULL;
2445
ValaCCodeVariableDeclarator* _tmp366_;
2446
_tmp357_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2447
_tmp358_ = vala_ccode_base_module_get_current_type_symbol ((ValaCCodeBaseModule*) self);
2448
_tmp359_ = vala_typesymbol_get_cname ((ValaTypeSymbol*) VALA_CLASS (_tmp358_), FALSE);
2415
ValaCCodeFunction* _tmp351_ = NULL;
2416
ValaTypeSymbol* _tmp352_ = NULL;
2417
gchar* _tmp353_ = NULL;
2419
gchar* _tmp355_ = NULL;
2421
ValaCCodeConstant* _tmp357_ = NULL;
2422
ValaCCodeConstant* _tmp358_;
2423
ValaCCodeVariableDeclarator* _tmp359_ = NULL;
2424
ValaCCodeVariableDeclarator* _tmp360_;
2425
_tmp351_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2426
_tmp352_ = vala_ccode_base_module_get_current_type_symbol ((ValaCCodeBaseModule*) self);
2427
_tmp353_ = vala_typesymbol_get_cname ((ValaTypeSymbol*) VALA_CLASS (_tmp352_), FALSE);
2428
_tmp354_ = _tmp353_;
2429
_tmp355_ = g_strdup_printf ("%s *", _tmp354_);
2430
_tmp356_ = _tmp355_;
2431
_tmp357_ = vala_ccode_constant_new ("NULL");
2432
_tmp358_ = _tmp357_;
2433
_tmp359_ = vala_ccode_variable_declarator_new_zero ("self", (ValaCCodeExpression*) _tmp358_, NULL);
2449
2434
_tmp360_ = _tmp359_;
2450
_tmp361_ = g_strdup_printf ("%s *", _tmp360_);
2451
_tmp362_ = _tmp361_;
2452
_tmp363_ = vala_ccode_constant_new ("NULL");
2453
_tmp364_ = _tmp363_;
2454
_tmp365_ = vala_ccode_variable_declarator_new_zero ("self", (ValaCCodeExpression*) _tmp364_, NULL);
2455
_tmp366_ = _tmp365_;
2456
vala_ccode_function_add_declaration (_tmp357_, _tmp362_, (ValaCCodeDeclarator*) _tmp366_, 0);
2457
_vala_ccode_node_unref0 (_tmp366_);
2458
_vala_ccode_node_unref0 (_tmp364_);
2459
_g_free0 (_tmp362_);
2460
_g_free0 (_tmp360_);
2435
vala_ccode_function_add_declaration (_tmp351_, _tmp356_, (ValaCCodeDeclarator*) _tmp360_, 0);
2436
_vala_ccode_node_unref0 (_tmp360_);
2437
_vala_ccode_node_unref0 (_tmp358_);
2438
_g_free0 (_tmp356_);
2439
_g_free0 (_tmp354_);
2463
_tmp367_ = vala_ccode_method_module_is_gtypeinstance_creation_method (self, m);
2465
ValaSymbol* _tmp368_ = NULL;
2466
ValaClass* _tmp369_;
2442
_tmp361_ = vala_ccode_method_module_is_gtypeinstance_creation_method (self, m);
2444
ValaSymbol* _tmp362_ = NULL;
2445
ValaClass* _tmp363_;
2468
ValaCCodeFunction* _tmp370_ = NULL;
2469
gchar* _tmp371_ = NULL;
2472
ValaCCodeConstant* _tmp374_ = NULL;
2473
ValaCCodeConstant* _tmp375_;
2474
ValaCCodeVariableDeclarator* _tmp376_ = NULL;
2475
ValaCCodeVariableDeclarator* _tmp377_;
2477
_tmp368_ = vala_symbol_get_parent_symbol ((ValaSymbol*) m);
2478
_tmp369_ = _vala_code_node_ref0 (VALA_CLASS (_tmp368_));
2480
_tmp370_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2481
_tmp371_ = vala_typesymbol_get_cname ((ValaTypeSymbol*) cl, FALSE);
2482
_tmp372_ = _tmp371_;
2483
_tmp373_ = g_strconcat (_tmp372_, "*", NULL);
2484
_tmp374_ = vala_ccode_constant_new ("NULL");
2485
_tmp375_ = _tmp374_;
2486
_tmp376_ = vala_ccode_variable_declarator_new_zero ("self", (ValaCCodeExpression*) _tmp375_, NULL);
2487
_tmp377_ = _tmp376_;
2488
vala_ccode_function_add_declaration (_tmp370_, _tmp373_, (ValaCCodeDeclarator*) _tmp377_, 0);
2489
_vala_ccode_node_unref0 (_tmp377_);
2490
_vala_ccode_node_unref0 (_tmp375_);
2491
_g_free0 (_tmp373_);
2492
_g_free0 (_tmp372_);
2493
_tmp378_ = vala_class_is_fundamental (cl);
2495
ValaCCodeIdentifier* _tmp379_ = NULL;
2496
ValaCCodeIdentifier* _tmp380_;
2497
ValaCCodeFunctionCall* _tmp381_ = NULL;
2498
ValaCCodeFunctionCall* _tmp382_;
2447
ValaCCodeFunction* _tmp364_ = NULL;
2448
gchar* _tmp365_ = NULL;
2451
ValaCCodeConstant* _tmp368_ = NULL;
2452
ValaCCodeConstant* _tmp369_;
2453
ValaCCodeVariableDeclarator* _tmp370_ = NULL;
2454
ValaCCodeVariableDeclarator* _tmp371_;
2456
_tmp362_ = vala_symbol_get_parent_symbol ((ValaSymbol*) m);
2457
_tmp363_ = _vala_code_node_ref0 (VALA_CLASS (_tmp362_));
2459
_tmp364_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2460
_tmp365_ = vala_typesymbol_get_cname ((ValaTypeSymbol*) cl, FALSE);
2461
_tmp366_ = _tmp365_;
2462
_tmp367_ = g_strconcat (_tmp366_, "*", NULL);
2463
_tmp368_ = vala_ccode_constant_new ("NULL");
2464
_tmp369_ = _tmp368_;
2465
_tmp370_ = vala_ccode_variable_declarator_new_zero ("self", (ValaCCodeExpression*) _tmp369_, NULL);
2466
_tmp371_ = _tmp370_;
2467
vala_ccode_function_add_declaration (_tmp364_, _tmp367_, (ValaCCodeDeclarator*) _tmp371_, 0);
2468
_vala_ccode_node_unref0 (_tmp371_);
2469
_vala_ccode_node_unref0 (_tmp369_);
2470
_g_free0 (_tmp367_);
2471
_g_free0 (_tmp366_);
2472
_tmp372_ = vala_class_is_fundamental (cl);
2474
ValaCCodeIdentifier* _tmp373_ = NULL;
2475
ValaCCodeIdentifier* _tmp374_;
2476
ValaCCodeFunctionCall* _tmp375_ = NULL;
2477
ValaCCodeFunctionCall* _tmp376_;
2499
2478
ValaCCodeFunctionCall* ccall;
2500
ValaCCodeIdentifier* _tmp383_ = NULL;
2501
ValaCCodeIdentifier* _tmp384_;
2502
ValaCCodeFunction* _tmp385_ = NULL;
2503
ValaCCodeIdentifier* _tmp386_ = NULL;
2504
ValaCCodeIdentifier* _tmp387_;
2505
gchar* _tmp388_ = NULL;
2508
ValaCCodeCastExpression* _tmp391_ = NULL;
2509
ValaCCodeCastExpression* _tmp392_;
2510
ValaCCodeAssignment* _tmp393_ = NULL;
2511
ValaCCodeAssignment* _tmp394_;
2512
_tmp379_ = vala_ccode_identifier_new ("g_type_create_instance");
2513
_tmp380_ = _tmp379_;
2514
_tmp381_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp380_);
2515
ccall = (_tmp382_ = _tmp381_, _vala_ccode_node_unref0 (_tmp380_), _tmp382_);
2516
_tmp383_ = vala_ccode_identifier_new ("object_type");
2517
_tmp384_ = _tmp383_;
2518
vala_ccode_function_call_add_argument (ccall, (ValaCCodeExpression*) _tmp384_);
2519
_vala_ccode_node_unref0 (_tmp384_);
2520
_tmp385_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2521
_tmp386_ = vala_ccode_identifier_new ("self");
2522
_tmp387_ = _tmp386_;
2523
_tmp388_ = vala_typesymbol_get_cname ((ValaTypeSymbol*) cl, FALSE);
2524
_tmp389_ = _tmp388_;
2525
_tmp390_ = g_strconcat (_tmp389_, "*", NULL);
2526
_tmp391_ = vala_ccode_cast_expression_new ((ValaCCodeExpression*) ccall, _tmp390_);
2527
_tmp392_ = _tmp391_;
2528
_tmp393_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp387_, (ValaCCodeExpression*) _tmp392_, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
2529
_tmp394_ = _tmp393_;
2530
vala_ccode_function_add_expression (_tmp385_, (ValaCCodeExpression*) _tmp394_);
2531
_vala_ccode_node_unref0 (_tmp394_);
2532
_vala_ccode_node_unref0 (_tmp392_);
2533
_g_free0 (_tmp390_);
2534
_g_free0 (_tmp389_);
2535
_vala_ccode_node_unref0 (_tmp387_);
2479
ValaCCodeIdentifier* _tmp377_ = NULL;
2480
ValaCCodeIdentifier* _tmp378_;
2481
ValaCCodeFunction* _tmp379_ = NULL;
2482
ValaCCodeIdentifier* _tmp380_ = NULL;
2483
ValaCCodeIdentifier* _tmp381_;
2484
gchar* _tmp382_ = NULL;
2487
ValaCCodeCastExpression* _tmp385_ = NULL;
2488
ValaCCodeCastExpression* _tmp386_;
2489
ValaCCodeAssignment* _tmp387_ = NULL;
2490
ValaCCodeAssignment* _tmp388_;
2491
_tmp373_ = vala_ccode_identifier_new ("g_type_create_instance");
2492
_tmp374_ = _tmp373_;
2493
_tmp375_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp374_);
2494
ccall = (_tmp376_ = _tmp375_, _vala_ccode_node_unref0 (_tmp374_), _tmp376_);
2495
_tmp377_ = vala_ccode_identifier_new ("object_type");
2496
_tmp378_ = _tmp377_;
2497
vala_ccode_function_call_add_argument (ccall, (ValaCCodeExpression*) _tmp378_);
2498
_vala_ccode_node_unref0 (_tmp378_);
2499
_tmp379_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2500
_tmp380_ = vala_ccode_identifier_new ("self");
2501
_tmp381_ = _tmp380_;
2502
_tmp382_ = vala_typesymbol_get_cname ((ValaTypeSymbol*) cl, FALSE);
2503
_tmp383_ = _tmp382_;
2504
_tmp384_ = g_strconcat (_tmp383_, "*", NULL);
2505
_tmp385_ = vala_ccode_cast_expression_new ((ValaCCodeExpression*) ccall, _tmp384_);
2506
_tmp386_ = _tmp385_;
2507
_tmp387_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp381_, (ValaCCodeExpression*) _tmp386_, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
2508
_tmp388_ = _tmp387_;
2509
vala_ccode_function_add_expression (_tmp379_, (ValaCCodeExpression*) _tmp388_);
2510
_vala_ccode_node_unref0 (_tmp388_);
2511
_vala_ccode_node_unref0 (_tmp386_);
2512
_g_free0 (_tmp384_);
2513
_g_free0 (_tmp383_);
2514
_vala_ccode_node_unref0 (_tmp381_);
2537
ValaClass* _tmp395_ = NULL;
2538
ValaList* _tmp396_ = NULL;
2516
ValaClass* _tmp389_ = NULL;
2517
ValaList* _tmp390_ = NULL;
2539
2518
ValaList* _type_param_list;
2541
2520
gint _type_param_size;
2542
2521
gint _type_param_index;
2543
_tmp395_ = vala_ccode_base_module_get_current_class ((ValaCCodeBaseModule*) self);
2544
_tmp396_ = vala_object_type_symbol_get_type_parameters ((ValaObjectTypeSymbol*) _tmp395_);
2545
_type_param_list = _tmp396_;
2546
_tmp397_ = vala_collection_get_size ((ValaCollection*) _type_param_list);
2547
_type_param_size = _tmp397_;
2522
_tmp389_ = vala_ccode_base_module_get_current_class ((ValaCCodeBaseModule*) self);
2523
_tmp390_ = vala_object_type_symbol_get_type_parameters ((ValaObjectTypeSymbol*) _tmp389_);
2524
_type_param_list = _tmp390_;
2525
_tmp391_ = vala_collection_get_size ((ValaCollection*) _type_param_list);
2526
_type_param_size = _tmp391_;
2548
2527
_type_param_index = -1;
2550
gpointer _tmp398_ = NULL;
2529
gpointer _tmp392_ = NULL;
2551
2530
ValaTypeParameter* type_param;
2552
2531
ValaCCodeIdentifier* param_name;
2553
2532
ValaCCodeAssignment* assign;
2554
ValaCCodeIdentifier* _tmp399_ = NULL;
2555
ValaCCodeIdentifier* _tmp400_;
2556
ValaCCodeMemberAccess* _tmp401_ = NULL;
2557
ValaCCodeMemberAccess* _tmp402_;
2533
ValaCCodeIdentifier* _tmp393_ = NULL;
2534
ValaCCodeIdentifier* _tmp394_;
2535
ValaCCodeMemberAccess* _tmp395_ = NULL;
2536
ValaCCodeMemberAccess* _tmp396_;
2558
2537
ValaCCodeMemberAccess* priv_access;
2559
const gchar* _tmp403_ = NULL;
2560
gchar* _tmp404_ = NULL;
2562
gchar* _tmp406_ = NULL;
2564
ValaCCodeIdentifier* _tmp408_ = NULL;
2565
ValaCCodeIdentifier* _tmp409_;
2538
const gchar* _tmp397_ = NULL;
2539
gchar* _tmp398_ = NULL;
2541
gchar* _tmp400_ = NULL;
2543
ValaCCodeIdentifier* _tmp402_ = NULL;
2544
ValaCCodeIdentifier* _tmp403_;
2545
const gchar* _tmp404_ = NULL;
2546
ValaCCodeMemberAccess* _tmp405_ = NULL;
2547
ValaCCodeMemberAccess* _tmp406_;
2548
ValaCCodeAssignment* _tmp407_ = NULL;
2549
ValaCCodeAssignment* _tmp408_;
2550
ValaCCodeFunction* _tmp409_ = NULL;
2566
2551
const gchar* _tmp410_ = NULL;
2567
ValaCCodeMemberAccess* _tmp411_ = NULL;
2568
ValaCCodeMemberAccess* _tmp412_;
2569
ValaCCodeAssignment* _tmp413_ = NULL;
2570
ValaCCodeAssignment* _tmp414_;
2571
ValaCCodeFunction* _tmp415_ = NULL;
2572
const gchar* _tmp416_ = NULL;
2573
gchar* _tmp417_ = NULL;
2575
gchar* _tmp419_ = NULL;
2577
ValaCCodeIdentifier* _tmp421_ = NULL;
2578
ValaCCodeIdentifier* _tmp422_;
2552
gchar* _tmp411_ = NULL;
2554
gchar* _tmp413_ = NULL;
2556
ValaCCodeIdentifier* _tmp415_ = NULL;
2557
ValaCCodeIdentifier* _tmp416_;
2558
const gchar* _tmp417_ = NULL;
2559
ValaCCodeMemberAccess* _tmp418_ = NULL;
2560
ValaCCodeMemberAccess* _tmp419_;
2561
ValaCCodeAssignment* _tmp420_ = NULL;
2562
ValaCCodeAssignment* _tmp421_;
2563
ValaCCodeFunction* _tmp422_ = NULL;
2579
2564
const gchar* _tmp423_ = NULL;
2580
ValaCCodeMemberAccess* _tmp424_ = NULL;
2581
ValaCCodeMemberAccess* _tmp425_;
2582
ValaCCodeAssignment* _tmp426_ = NULL;
2583
ValaCCodeAssignment* _tmp427_;
2584
ValaCCodeFunction* _tmp428_ = NULL;
2585
const gchar* _tmp429_ = NULL;
2586
gchar* _tmp430_ = NULL;
2588
gchar* _tmp432_ = NULL;
2590
ValaCCodeIdentifier* _tmp434_ = NULL;
2591
ValaCCodeIdentifier* _tmp435_;
2592
const gchar* _tmp436_ = NULL;
2593
ValaCCodeMemberAccess* _tmp437_ = NULL;
2594
ValaCCodeMemberAccess* _tmp438_;
2595
ValaCCodeAssignment* _tmp439_ = NULL;
2596
ValaCCodeAssignment* _tmp440_;
2597
ValaCCodeFunction* _tmp441_ = NULL;
2565
gchar* _tmp424_ = NULL;
2567
gchar* _tmp426_ = NULL;
2569
ValaCCodeIdentifier* _tmp428_ = NULL;
2570
ValaCCodeIdentifier* _tmp429_;
2571
const gchar* _tmp430_ = NULL;
2572
ValaCCodeMemberAccess* _tmp431_ = NULL;
2573
ValaCCodeMemberAccess* _tmp432_;
2574
ValaCCodeAssignment* _tmp433_ = NULL;
2575
ValaCCodeAssignment* _tmp434_;
2576
ValaCCodeFunction* _tmp435_ = NULL;
2598
2577
_type_param_index = _type_param_index + 1;
2599
2578
if (!(_type_param_index < _type_param_size)) {
2602
_tmp398_ = vala_list_get (_type_param_list, _type_param_index);
2603
type_param = (ValaTypeParameter*) _tmp398_;
2581
_tmp392_ = vala_list_get (_type_param_list, _type_param_index);
2582
type_param = (ValaTypeParameter*) _tmp392_;
2604
2583
param_name = NULL;
2606
_tmp399_ = vala_ccode_identifier_new ("self");
2607
_tmp400_ = _tmp399_;
2608
_tmp401_ = vala_ccode_member_access_new_pointer ((ValaCCodeExpression*) _tmp400_, "priv");
2609
priv_access = (_tmp402_ = _tmp401_, _vala_ccode_node_unref0 (_tmp400_), _tmp402_);
2610
_tmp403_ = vala_symbol_get_name ((ValaSymbol*) type_param);
2611
_tmp404_ = g_utf8_strdown (_tmp403_, (gssize) (-1));
2612
_tmp405_ = _tmp404_;
2613
_tmp406_ = g_strdup_printf ("%s_type", _tmp405_);
2614
_tmp407_ = _tmp406_;
2615
_tmp408_ = vala_ccode_identifier_new (_tmp407_);
2616
_tmp409_ = _tmp408_;
2585
_tmp393_ = vala_ccode_identifier_new ("self");
2586
_tmp394_ = _tmp393_;
2587
_tmp395_ = vala_ccode_member_access_new_pointer ((ValaCCodeExpression*) _tmp394_, "priv");
2588
priv_access = (_tmp396_ = _tmp395_, _vala_ccode_node_unref0 (_tmp394_), _tmp396_);
2589
_tmp397_ = vala_symbol_get_name ((ValaSymbol*) type_param);
2590
_tmp398_ = g_utf8_strdown (_tmp397_, (gssize) (-1));
2591
_tmp399_ = _tmp398_;
2592
_tmp400_ = g_strdup_printf ("%s_type", _tmp399_);
2593
_tmp401_ = _tmp400_;
2594
_tmp402_ = vala_ccode_identifier_new (_tmp401_);
2595
_tmp403_ = _tmp402_;
2617
2596
_vala_ccode_node_unref0 (param_name);
2618
param_name = _tmp409_;
2619
_g_free0 (_tmp407_);
2620
_g_free0 (_tmp405_);
2621
_tmp410_ = vala_ccode_identifier_get_name (param_name);
2622
_tmp411_ = vala_ccode_member_access_new_pointer ((ValaCCodeExpression*) priv_access, _tmp410_);
2597
param_name = _tmp403_;
2598
_g_free0 (_tmp401_);
2599
_g_free0 (_tmp399_);
2600
_tmp404_ = vala_ccode_identifier_get_name (param_name);
2601
_tmp405_ = vala_ccode_member_access_new_pointer ((ValaCCodeExpression*) priv_access, _tmp404_);
2602
_tmp406_ = _tmp405_;
2603
_tmp407_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp406_, (ValaCCodeExpression*) param_name, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
2604
_tmp408_ = _tmp407_;
2605
_vala_ccode_node_unref0 (assign);
2607
_vala_ccode_node_unref0 (_tmp406_);
2608
_tmp409_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2609
vala_ccode_function_add_expression (_tmp409_, (ValaCCodeExpression*) assign);
2610
_tmp410_ = vala_symbol_get_name ((ValaSymbol*) type_param);
2611
_tmp411_ = g_utf8_strdown (_tmp410_, (gssize) (-1));
2623
2612
_tmp412_ = _tmp411_;
2624
_tmp413_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp412_, (ValaCCodeExpression*) param_name, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
2613
_tmp413_ = g_strdup_printf ("%s_dup_func", _tmp412_);
2625
2614
_tmp414_ = _tmp413_;
2615
_tmp415_ = vala_ccode_identifier_new (_tmp414_);
2616
_tmp416_ = _tmp415_;
2617
_vala_ccode_node_unref0 (param_name);
2618
param_name = _tmp416_;
2619
_g_free0 (_tmp414_);
2620
_g_free0 (_tmp412_);
2621
_tmp417_ = vala_ccode_identifier_get_name (param_name);
2622
_tmp418_ = vala_ccode_member_access_new_pointer ((ValaCCodeExpression*) priv_access, _tmp417_);
2623
_tmp419_ = _tmp418_;
2624
_tmp420_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp419_, (ValaCCodeExpression*) param_name, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
2625
_tmp421_ = _tmp420_;
2626
2626
_vala_ccode_node_unref0 (assign);
2628
_vala_ccode_node_unref0 (_tmp412_);
2629
_tmp415_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2630
vala_ccode_function_add_expression (_tmp415_, (ValaCCodeExpression*) assign);
2631
_tmp416_ = vala_symbol_get_name ((ValaSymbol*) type_param);
2632
_tmp417_ = g_utf8_strdown (_tmp416_, (gssize) (-1));
2633
_tmp418_ = _tmp417_;
2634
_tmp419_ = g_strdup_printf ("%s_dup_func", _tmp418_);
2635
_tmp420_ = _tmp419_;
2636
_tmp421_ = vala_ccode_identifier_new (_tmp420_);
2637
_tmp422_ = _tmp421_;
2638
_vala_ccode_node_unref0 (param_name);
2639
param_name = _tmp422_;
2640
_g_free0 (_tmp420_);
2641
_g_free0 (_tmp418_);
2642
_tmp423_ = vala_ccode_identifier_get_name (param_name);
2643
_tmp424_ = vala_ccode_member_access_new_pointer ((ValaCCodeExpression*) priv_access, _tmp423_);
2628
_vala_ccode_node_unref0 (_tmp419_);
2629
_tmp422_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2630
vala_ccode_function_add_expression (_tmp422_, (ValaCCodeExpression*) assign);
2631
_tmp423_ = vala_symbol_get_name ((ValaSymbol*) type_param);
2632
_tmp424_ = g_utf8_strdown (_tmp423_, (gssize) (-1));
2644
2633
_tmp425_ = _tmp424_;
2645
_tmp426_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp425_, (ValaCCodeExpression*) param_name, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
2634
_tmp426_ = g_strdup_printf ("%s_destroy_func", _tmp425_);
2646
2635
_tmp427_ = _tmp426_;
2647
_vala_ccode_node_unref0 (assign);
2649
_vala_ccode_node_unref0 (_tmp425_);
2650
_tmp428_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2651
vala_ccode_function_add_expression (_tmp428_, (ValaCCodeExpression*) assign);
2652
_tmp429_ = vala_symbol_get_name ((ValaSymbol*) type_param);
2653
_tmp430_ = g_utf8_strdown (_tmp429_, (gssize) (-1));
2654
_tmp431_ = _tmp430_;
2655
_tmp432_ = g_strdup_printf ("%s_destroy_func", _tmp431_);
2656
_tmp433_ = _tmp432_;
2657
_tmp434_ = vala_ccode_identifier_new (_tmp433_);
2658
_tmp435_ = _tmp434_;
2636
_tmp428_ = vala_ccode_identifier_new (_tmp427_);
2637
_tmp429_ = _tmp428_;
2659
2638
_vala_ccode_node_unref0 (param_name);
2660
param_name = _tmp435_;
2661
_g_free0 (_tmp433_);
2662
_g_free0 (_tmp431_);
2663
_tmp436_ = vala_ccode_identifier_get_name (param_name);
2664
_tmp437_ = vala_ccode_member_access_new_pointer ((ValaCCodeExpression*) priv_access, _tmp436_);
2665
_tmp438_ = _tmp437_;
2666
_tmp439_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp438_, (ValaCCodeExpression*) param_name, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
2667
_tmp440_ = _tmp439_;
2639
param_name = _tmp429_;
2640
_g_free0 (_tmp427_);
2641
_g_free0 (_tmp425_);
2642
_tmp430_ = vala_ccode_identifier_get_name (param_name);
2643
_tmp431_ = vala_ccode_member_access_new_pointer ((ValaCCodeExpression*) priv_access, _tmp430_);
2644
_tmp432_ = _tmp431_;
2645
_tmp433_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp432_, (ValaCCodeExpression*) param_name, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
2646
_tmp434_ = _tmp433_;
2668
2647
_vala_ccode_node_unref0 (assign);
2670
_vala_ccode_node_unref0 (_tmp438_);
2671
_tmp441_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2672
vala_ccode_function_add_expression (_tmp441_, (ValaCCodeExpression*) assign);
2649
_vala_ccode_node_unref0 (_tmp432_);
2650
_tmp435_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2651
vala_ccode_function_add_expression (_tmp435_, (ValaCCodeExpression*) assign);
2673
2652
_vala_ccode_node_unref0 (priv_access);
2674
2653
_vala_ccode_node_unref0 (assign);
2675
2654
_vala_ccode_node_unref0 (param_name);
2682
2661
_vala_code_node_unref0 (cl);
2684
ValaTypeSymbol* _tmp442_ = NULL;
2685
_tmp442_ = vala_ccode_base_module_get_current_type_symbol ((ValaCCodeBaseModule*) self);
2686
if (VALA_IS_CLASS (_tmp442_)) {
2687
ValaSymbol* _tmp443_ = NULL;
2688
ValaClass* _tmp444_;
2663
ValaTypeSymbol* _tmp436_ = NULL;
2664
_tmp436_ = vala_ccode_base_module_get_current_type_symbol ((ValaCCodeBaseModule*) self);
2665
if (VALA_IS_CLASS (_tmp436_)) {
2666
ValaSymbol* _tmp437_ = NULL;
2667
ValaClass* _tmp438_;
2690
ValaCCodeFunction* _tmp445_ = NULL;
2691
gchar* _tmp446_ = NULL;
2694
ValaCCodeVariableDeclarator* _tmp449_ = NULL;
2695
ValaCCodeVariableDeclarator* _tmp450_;
2697
ValaClass* _tmp465_ = NULL;
2698
_tmp443_ = vala_symbol_get_parent_symbol ((ValaSymbol*) m);
2699
_tmp444_ = _vala_code_node_ref0 (VALA_CLASS (_tmp443_));
2701
_tmp445_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2702
_tmp446_ = vala_typesymbol_get_cname ((ValaTypeSymbol*) cl, FALSE);
2703
_tmp447_ = _tmp446_;
2704
_tmp448_ = g_strconcat (_tmp447_, "*", NULL);
2705
_tmp449_ = vala_ccode_variable_declarator_new ("self", NULL, NULL);
2706
_tmp450_ = _tmp449_;
2707
vala_ccode_function_add_declaration (_tmp445_, _tmp448_, (ValaCCodeDeclarator*) _tmp450_, 0);
2708
_vala_ccode_node_unref0 (_tmp450_);
2709
_g_free0 (_tmp448_);
2710
_g_free0 (_tmp447_);
2711
_tmp451_ = vala_creation_method_get_chain_up (VALA_CREATION_METHOD (m));
2669
ValaCCodeFunction* _tmp439_ = NULL;
2670
gchar* _tmp440_ = NULL;
2673
ValaCCodeVariableDeclarator* _tmp443_ = NULL;
2674
ValaCCodeVariableDeclarator* _tmp444_;
2676
ValaClass* _tmp459_ = NULL;
2677
_tmp437_ = vala_symbol_get_parent_symbol ((ValaSymbol*) m);
2678
_tmp438_ = _vala_code_node_ref0 (VALA_CLASS (_tmp437_));
2680
_tmp439_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2681
_tmp440_ = vala_typesymbol_get_cname ((ValaTypeSymbol*) cl, FALSE);
2682
_tmp441_ = _tmp440_;
2683
_tmp442_ = g_strconcat (_tmp441_, "*", NULL);
2684
_tmp443_ = vala_ccode_variable_declarator_new ("self", NULL, NULL);
2685
_tmp444_ = _tmp443_;
2686
vala_ccode_function_add_declaration (_tmp439_, _tmp442_, (ValaCCodeDeclarator*) _tmp444_, 0);
2687
_vala_ccode_node_unref0 (_tmp444_);
2688
_g_free0 (_tmp442_);
2689
_g_free0 (_tmp441_);
2690
_tmp445_ = vala_creation_method_get_chain_up (VALA_CREATION_METHOD (m));
2692
ValaCCodeIdentifier* _tmp446_ = NULL;
2693
ValaCCodeIdentifier* _tmp447_;
2694
ValaCCodeFunctionCall* _tmp448_ = NULL;
2695
ValaCCodeFunctionCall* _tmp449_;
2696
ValaCCodeFunctionCall* ccall;
2697
gchar* _tmp450_ = NULL;
2713
2699
ValaCCodeIdentifier* _tmp452_ = NULL;
2714
2700
ValaCCodeIdentifier* _tmp453_;
2715
ValaCCodeFunctionCall* _tmp454_ = NULL;
2716
ValaCCodeFunctionCall* _tmp455_;
2717
ValaCCodeFunctionCall* ccall;
2718
gchar* _tmp456_ = NULL;
2720
ValaCCodeIdentifier* _tmp458_ = NULL;
2721
ValaCCodeIdentifier* _tmp459_;
2722
ValaCCodeFunction* _tmp460_ = NULL;
2723
ValaCCodeIdentifier* _tmp461_ = NULL;
2724
ValaCCodeIdentifier* _tmp462_;
2725
ValaCCodeAssignment* _tmp463_ = NULL;
2726
ValaCCodeAssignment* _tmp464_;
2727
_tmp452_ = vala_ccode_identifier_new ("g_slice_new0");
2701
ValaCCodeFunction* _tmp454_ = NULL;
2702
ValaCCodeIdentifier* _tmp455_ = NULL;
2703
ValaCCodeIdentifier* _tmp456_;
2704
ValaCCodeAssignment* _tmp457_ = NULL;
2705
ValaCCodeAssignment* _tmp458_;
2706
_tmp446_ = vala_ccode_identifier_new ("g_slice_new0");
2707
_tmp447_ = _tmp446_;
2708
_tmp448_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp447_);
2709
ccall = (_tmp449_ = _tmp448_, _vala_ccode_node_unref0 (_tmp447_), _tmp449_);
2710
_tmp450_ = vala_typesymbol_get_cname ((ValaTypeSymbol*) cl, FALSE);
2711
_tmp451_ = _tmp450_;
2712
_tmp452_ = vala_ccode_identifier_new (_tmp451_);
2728
2713
_tmp453_ = _tmp452_;
2729
_tmp454_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp453_);
2730
ccall = (_tmp455_ = _tmp454_, _vala_ccode_node_unref0 (_tmp453_), _tmp455_);
2731
_tmp456_ = vala_typesymbol_get_cname ((ValaTypeSymbol*) cl, FALSE);
2732
_tmp457_ = _tmp456_;
2733
_tmp458_ = vala_ccode_identifier_new (_tmp457_);
2734
_tmp459_ = _tmp458_;
2735
vala_ccode_function_call_add_argument (ccall, (ValaCCodeExpression*) _tmp459_);
2736
_vala_ccode_node_unref0 (_tmp459_);
2737
_g_free0 (_tmp457_);
2738
_tmp460_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2739
_tmp461_ = vala_ccode_identifier_new ("self");
2740
_tmp462_ = _tmp461_;
2741
_tmp463_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp462_, (ValaCCodeExpression*) ccall, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
2742
_tmp464_ = _tmp463_;
2743
vala_ccode_function_add_expression (_tmp460_, (ValaCCodeExpression*) _tmp464_);
2744
_vala_ccode_node_unref0 (_tmp464_);
2745
_vala_ccode_node_unref0 (_tmp462_);
2714
vala_ccode_function_call_add_argument (ccall, (ValaCCodeExpression*) _tmp453_);
2715
_vala_ccode_node_unref0 (_tmp453_);
2716
_g_free0 (_tmp451_);
2717
_tmp454_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2718
_tmp455_ = vala_ccode_identifier_new ("self");
2719
_tmp456_ = _tmp455_;
2720
_tmp457_ = vala_ccode_assignment_new ((ValaCCodeExpression*) _tmp456_, (ValaCCodeExpression*) ccall, VALA_CCODE_ASSIGNMENT_OPERATOR_SIMPLE);
2721
_tmp458_ = _tmp457_;
2722
vala_ccode_function_add_expression (_tmp454_, (ValaCCodeExpression*) _tmp458_);
2723
_vala_ccode_node_unref0 (_tmp458_);
2724
_vala_ccode_node_unref0 (_tmp456_);
2746
2725
_vala_ccode_node_unref0 (ccall);
2748
_tmp465_ = vala_class_get_base_class (cl);
2749
if (_tmp465_ == NULL) {
2750
gchar* _tmp466_ = NULL;
2752
gchar* _tmp468_ = NULL;
2754
ValaCCodeIdentifier* _tmp470_ = NULL;
2755
ValaCCodeIdentifier* _tmp471_;
2756
ValaCCodeFunctionCall* _tmp472_ = NULL;
2757
ValaCCodeFunctionCall* _tmp473_;
2727
_tmp459_ = vala_class_get_base_class (cl);
2728
if (_tmp459_ == NULL) {
2729
gchar* _tmp460_ = NULL;
2731
gchar* _tmp462_ = NULL;
2733
ValaCCodeIdentifier* _tmp464_ = NULL;
2734
ValaCCodeIdentifier* _tmp465_;
2735
ValaCCodeFunctionCall* _tmp466_ = NULL;
2736
ValaCCodeFunctionCall* _tmp467_;
2758
2737
ValaCCodeFunctionCall* cinitcall;
2759
ValaCCodeIdentifier* _tmp474_ = NULL;
2760
ValaCCodeIdentifier* _tmp475_;
2761
ValaCCodeFunction* _tmp476_ = NULL;
2762
_tmp466_ = vala_symbol_get_lower_case_cname ((ValaSymbol*) cl, NULL);
2763
_tmp467_ = _tmp466_;
2764
_tmp468_ = g_strdup_printf ("%s_instance_init", _tmp467_);
2738
ValaCCodeIdentifier* _tmp468_ = NULL;
2739
ValaCCodeIdentifier* _tmp469_;
2740
ValaCCodeFunction* _tmp470_ = NULL;
2741
_tmp460_ = vala_symbol_get_lower_case_cname ((ValaSymbol*) cl, NULL);
2742
_tmp461_ = _tmp460_;
2743
_tmp462_ = g_strdup_printf ("%s_instance_init", _tmp461_);
2744
_tmp463_ = _tmp462_;
2745
_tmp464_ = vala_ccode_identifier_new (_tmp463_);
2746
_tmp465_ = _tmp464_;
2747
_tmp466_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp465_);
2748
cinitcall = (_tmp467_ = _tmp466_, _vala_ccode_node_unref0 (_tmp465_), _g_free0 (_tmp463_), _g_free0 (_tmp461_), _tmp467_);
2749
_tmp468_ = vala_ccode_identifier_new ("self");
2765
2750
_tmp469_ = _tmp468_;
2766
_tmp470_ = vala_ccode_identifier_new (_tmp469_);
2767
_tmp471_ = _tmp470_;
2768
_tmp472_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp471_);
2769
cinitcall = (_tmp473_ = _tmp472_, _vala_ccode_node_unref0 (_tmp471_), _g_free0 (_tmp469_), _g_free0 (_tmp467_), _tmp473_);
2770
_tmp474_ = vala_ccode_identifier_new ("self");
2771
_tmp475_ = _tmp474_;
2772
vala_ccode_function_call_add_argument (cinitcall, (ValaCCodeExpression*) _tmp475_);
2773
_vala_ccode_node_unref0 (_tmp475_);
2774
_tmp476_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2775
vala_ccode_function_add_expression (_tmp476_, (ValaCCodeExpression*) cinitcall);
2751
vala_ccode_function_call_add_argument (cinitcall, (ValaCCodeExpression*) _tmp469_);
2752
_vala_ccode_node_unref0 (_tmp469_);
2753
_tmp470_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2754
vala_ccode_function_add_expression (_tmp470_, (ValaCCodeExpression*) cinitcall);
2776
2755
_vala_ccode_node_unref0 (cinitcall);
2778
2757
_vala_code_node_unref0 (cl);
2780
ValaSymbol* _tmp477_ = NULL;
2781
ValaStruct* _tmp478_;
2759
ValaSymbol* _tmp471_ = NULL;
2760
ValaStruct* _tmp472_;
2782
2761
ValaStruct* st;
2783
ValaCCodeIdentifier* _tmp479_ = NULL;
2784
ValaCCodeIdentifier* _tmp480_;
2785
ValaCCodeFunctionCall* _tmp481_ = NULL;
2786
ValaCCodeFunctionCall* _tmp482_;
2762
ValaCCodeIdentifier* _tmp473_ = NULL;
2763
ValaCCodeIdentifier* _tmp474_;
2764
ValaCCodeFunctionCall* _tmp475_ = NULL;
2765
ValaCCodeFunctionCall* _tmp476_;
2787
2766
ValaCCodeFunctionCall* czero;
2788
ValaCCodeIdentifier* _tmp483_ = NULL;
2789
ValaCCodeIdentifier* _tmp484_;
2790
ValaCCodeConstant* _tmp485_ = NULL;
2791
ValaCCodeConstant* _tmp486_;
2792
gchar* _tmp487_ = NULL;
2794
gchar* _tmp489_ = NULL;
2796
ValaCCodeIdentifier* _tmp491_ = NULL;
2797
ValaCCodeIdentifier* _tmp492_;
2798
ValaCCodeFunction* _tmp493_ = NULL;
2799
_tmp477_ = vala_symbol_get_parent_symbol ((ValaSymbol*) m);
2800
_tmp478_ = _vala_code_node_ref0 (VALA_STRUCT (_tmp477_));
2767
ValaCCodeIdentifier* _tmp477_ = NULL;
2768
ValaCCodeIdentifier* _tmp478_;
2769
ValaCCodeConstant* _tmp479_ = NULL;
2770
ValaCCodeConstant* _tmp480_;
2771
gchar* _tmp481_ = NULL;
2773
gchar* _tmp483_ = NULL;
2775
ValaCCodeIdentifier* _tmp485_ = NULL;
2776
ValaCCodeIdentifier* _tmp486_;
2777
ValaCCodeFunction* _tmp487_ = NULL;
2778
_tmp471_ = vala_symbol_get_parent_symbol ((ValaSymbol*) m);
2779
_tmp472_ = _vala_code_node_ref0 (VALA_STRUCT (_tmp471_));
2802
2781
vala_ccode_file_add_include (((ValaCCodeBaseModule*) self)->cfile, "string.h", FALSE);
2803
_tmp479_ = vala_ccode_identifier_new ("memset");
2782
_tmp473_ = vala_ccode_identifier_new ("memset");
2783
_tmp474_ = _tmp473_;
2784
_tmp475_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp474_);
2785
czero = (_tmp476_ = _tmp475_, _vala_ccode_node_unref0 (_tmp474_), _tmp476_);
2786
_tmp477_ = vala_ccode_identifier_new ("self");
2787
_tmp478_ = _tmp477_;
2788
vala_ccode_function_call_add_argument (czero, (ValaCCodeExpression*) _tmp478_);
2789
_vala_ccode_node_unref0 (_tmp478_);
2790
_tmp479_ = vala_ccode_constant_new ("0");
2804
2791
_tmp480_ = _tmp479_;
2805
_tmp481_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp480_);
2806
czero = (_tmp482_ = _tmp481_, _vala_ccode_node_unref0 (_tmp480_), _tmp482_);
2807
_tmp483_ = vala_ccode_identifier_new ("self");
2792
vala_ccode_function_call_add_argument (czero, (ValaCCodeExpression*) _tmp480_);
2793
_vala_ccode_node_unref0 (_tmp480_);
2794
_tmp481_ = vala_typesymbol_get_cname ((ValaTypeSymbol*) st, FALSE);
2795
_tmp482_ = _tmp481_;
2796
_tmp483_ = g_strdup_printf ("sizeof (%s)", _tmp482_);
2808
2797
_tmp484_ = _tmp483_;
2809
vala_ccode_function_call_add_argument (czero, (ValaCCodeExpression*) _tmp484_);
2810
_vala_ccode_node_unref0 (_tmp484_);
2811
_tmp485_ = vala_ccode_constant_new ("0");
2798
_tmp485_ = vala_ccode_identifier_new (_tmp484_);
2812
2799
_tmp486_ = _tmp485_;
2813
2800
vala_ccode_function_call_add_argument (czero, (ValaCCodeExpression*) _tmp486_);
2814
2801
_vala_ccode_node_unref0 (_tmp486_);
2815
_tmp487_ = vala_typesymbol_get_cname ((ValaTypeSymbol*) st, FALSE);
2816
_tmp488_ = _tmp487_;
2817
_tmp489_ = g_strdup_printf ("sizeof (%s)", _tmp488_);
2818
_tmp490_ = _tmp489_;
2819
_tmp491_ = vala_ccode_identifier_new (_tmp490_);
2820
_tmp492_ = _tmp491_;
2821
vala_ccode_function_call_add_argument (czero, (ValaCCodeExpression*) _tmp492_);
2822
_vala_ccode_node_unref0 (_tmp492_);
2823
_g_free0 (_tmp490_);
2824
_g_free0 (_tmp488_);
2825
_tmp493_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2826
vala_ccode_function_add_expression (_tmp493_, (ValaCCodeExpression*) czero);
2802
_g_free0 (_tmp484_);
2803
_g_free0 (_tmp482_);
2804
_tmp487_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2805
vala_ccode_function_add_expression (_tmp487_, (ValaCCodeExpression*) czero);
2827
2806
_vala_ccode_node_unref0 (czero);
2828
2807
_vala_code_node_unref0 (st);
2833
_tmp495_ = vala_ccode_base_module_get_context ((ValaCCodeBaseModule*) self);
2834
_tmp496_ = vala_code_context_get_module_init_method (_tmp495_);
2835
if (_tmp496_ == m) {
2836
_tmp494_ = ((ValaCCodeBaseModule*) self)->in_plugin;
2812
_tmp489_ = vala_ccode_base_module_get_context ((ValaCCodeBaseModule*) self);
2813
_tmp490_ = vala_code_context_get_module_init_method (_tmp489_);
2814
if (_tmp490_ == m) {
2815
_tmp488_ = ((ValaCCodeBaseModule*) self)->in_plugin;
2841
ValaCodeContext* _tmp497_ = NULL;
2842
ValaNamespace* _tmp498_ = NULL;
2843
ValaHashSet* _tmp499_ = NULL;
2844
ValaHashSet* _tmp500_;
2845
_tmp497_ = vala_ccode_base_module_get_context ((ValaCCodeBaseModule*) self);
2846
_tmp498_ = vala_code_context_get_root (_tmp497_);
2847
_tmp499_ = vala_hash_set_new (VALA_TYPE_SYMBOL, (GBoxedCopyFunc) vala_code_node_ref, vala_code_node_unref, g_direct_hash, g_direct_equal);
2848
_tmp500_ = _tmp499_;
2849
vala_ccode_method_module_register_plugin_types (self, (ValaSymbol*) _tmp498_, (ValaSet*) _tmp500_);
2850
_vala_iterable_unref0 (_tmp500_);
2820
ValaCodeContext* _tmp491_ = NULL;
2821
ValaNamespace* _tmp492_ = NULL;
2822
ValaHashSet* _tmp493_ = NULL;
2823
ValaHashSet* _tmp494_;
2824
_tmp491_ = vala_ccode_base_module_get_context ((ValaCCodeBaseModule*) self);
2825
_tmp492_ = vala_code_context_get_root (_tmp491_);
2826
_tmp493_ = vala_hash_set_new (VALA_TYPE_SYMBOL, (GBoxedCopyFunc) vala_code_node_ref, vala_code_node_unref, g_direct_hash, g_direct_equal);
2827
_tmp494_ = _tmp493_;
2828
vala_ccode_method_module_register_plugin_types (self, (ValaSymbol*) _tmp492_, (ValaSet*) _tmp494_);
2829
_vala_iterable_unref0 (_tmp494_);
2853
ValaList* _tmp501_ = NULL;
2832
ValaList* _tmp495_ = NULL;
2854
2833
ValaList* _precondition_list;
2856
2835
gint _precondition_size;
2857
2836
gint _precondition_index;
2858
_tmp501_ = vala_method_get_preconditions (m);
2859
_precondition_list = _tmp501_;
2860
_tmp502_ = vala_collection_get_size ((ValaCollection*) _precondition_list);
2861
_precondition_size = _tmp502_;
2837
_tmp495_ = vala_method_get_preconditions (m);
2838
_precondition_list = _tmp495_;
2839
_tmp496_ = vala_collection_get_size ((ValaCollection*) _precondition_list);
2840
_precondition_size = _tmp496_;
2862
2841
_precondition_index = -1;
2864
gpointer _tmp503_ = NULL;
2843
gpointer _tmp497_ = NULL;
2865
2844
ValaExpression* precondition;
2866
2845
_precondition_index = _precondition_index + 1;
2867
2846
if (!(_precondition_index < _precondition_size)) {
2870
_tmp503_ = vala_list_get (_precondition_list, _precondition_index);
2871
precondition = (ValaExpression*) _tmp503_;
2849
_tmp497_ = vala_list_get (_precondition_list, _precondition_index);
2850
precondition = (ValaExpression*) _tmp497_;
2872
2851
vala_ccode_method_module_create_precondition_statement (self, (ValaCodeNode*) m, creturn_type, precondition);
2873
2852
_vala_code_node_unref0 (precondition);
2879
_tmp504_ = vala_subroutine_get_body ((ValaSubroutine*) m);
2880
if (_tmp504_ != NULL) {
2858
_tmp498_ = vala_subroutine_get_body ((ValaSubroutine*) m);
2859
if (_tmp498_ != NULL) {
2860
ValaBlock* _tmp499_ = NULL;
2861
_tmp499_ = vala_subroutine_get_body ((ValaSubroutine*) m);
2862
vala_code_node_emit ((ValaCodeNode*) _tmp499_, (ValaCodeGenerator*) self);
2864
_tmp501_ = vala_method_get_is_abstract (m);
2868
gboolean _tmp502_ = FALSE;
2870
_tmp503_ = vala_method_get_is_abstract (m);
2872
ValaTypeSymbol* _tmp504_ = NULL;
2873
_tmp504_ = vala_ccode_base_module_get_current_type_symbol ((ValaCCodeBaseModule*) self);
2874
_tmp502_ = VALA_IS_CLASS (_tmp504_);
2878
_tmp500_ = _tmp502_;
2881
2881
ValaBlock* _tmp505_ = NULL;
2882
2882
_tmp505_ = vala_subroutine_get_body ((ValaSubroutine*) m);
2883
vala_code_node_emit ((ValaCodeNode*) _tmp505_, (ValaCodeGenerator*) self);
2885
_tmp507_ = vala_method_get_is_abstract (m);
2889
gboolean _tmp508_ = FALSE;
2891
_tmp509_ = vala_method_get_is_abstract (m);
2893
ValaTypeSymbol* _tmp510_ = NULL;
2894
_tmp510_ = vala_ccode_base_module_get_current_type_symbol ((ValaCCodeBaseModule*) self);
2895
_tmp508_ = VALA_IS_CLASS (_tmp510_);
2899
_tmp506_ = _tmp508_;
2902
ValaBlock* _tmp511_ = NULL;
2903
_tmp511_ = vala_subroutine_get_body ((ValaSubroutine*) m);
2904
if (_tmp511_ != NULL) {
2907
gboolean _tmp520_ = FALSE;
2908
gboolean _tmp521_ = FALSE;
2909
ValaDataType* _tmp522_ = NULL;
2910
ValaCCodeFunction* _tmp598_ = NULL;
2911
_tmp512_ = vala_ccode_base_module_get_current_method_inner_error ((ValaCCodeBaseModule*) self);
2914
_tmp513_ = vala_method_get_coroutine (m);
2883
if (_tmp505_ != NULL) {
2886
gboolean _tmp514_ = FALSE;
2887
gboolean _tmp515_ = FALSE;
2888
ValaDataType* _tmp516_ = NULL;
2889
ValaCCodeFunction* _tmp592_ = NULL;
2890
_tmp506_ = vala_ccode_base_module_get_current_method_inner_error ((ValaCCodeBaseModule*) self);
2893
_tmp507_ = vala_method_get_coroutine (m);
2916
2895
vala_ccode_struct_add_field (((ValaCCodeBaseModule*) self)->closure_struct, "GError *", "_inner_error_", NULL);
2918
ValaCCodeFunction* _tmp514_ = NULL;
2919
ValaCCodeConstant* _tmp515_ = NULL;
2920
ValaCCodeConstant* _tmp516_;
2921
ValaCCodeVariableDeclarator* _tmp517_ = NULL;
2922
ValaCCodeVariableDeclarator* _tmp518_;
2923
_tmp514_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2924
_tmp515_ = vala_ccode_constant_new ("NULL");
2925
_tmp516_ = _tmp515_;
2926
_tmp517_ = vala_ccode_variable_declarator_new_zero ("_inner_error_", (ValaCCodeExpression*) _tmp516_, NULL);
2927
_tmp518_ = _tmp517_;
2928
vala_ccode_function_add_declaration (_tmp514_, "GError *", (ValaCCodeDeclarator*) _tmp518_, 0);
2929
_vala_ccode_node_unref0 (_tmp518_);
2930
_vala_ccode_node_unref0 (_tmp516_);
2897
ValaCCodeFunction* _tmp508_ = NULL;
2898
ValaCCodeConstant* _tmp509_ = NULL;
2899
ValaCCodeConstant* _tmp510_;
2900
ValaCCodeVariableDeclarator* _tmp511_ = NULL;
2901
ValaCCodeVariableDeclarator* _tmp512_;
2902
_tmp508_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2903
_tmp509_ = vala_ccode_constant_new ("NULL");
2904
_tmp510_ = _tmp509_;
2905
_tmp511_ = vala_ccode_variable_declarator_new_zero ("_inner_error_", (ValaCCodeExpression*) _tmp510_, NULL);
2906
_tmp512_ = _tmp511_;
2907
vala_ccode_function_add_declaration (_tmp508_, "GError *", (ValaCCodeDeclarator*) _tmp512_, 0);
2908
_vala_ccode_node_unref0 (_tmp512_);
2909
_vala_ccode_node_unref0 (_tmp510_);
2933
_tmp519_ = vala_method_get_coroutine (m);
2912
_tmp513_ = vala_method_get_coroutine (m);
2935
2914
vala_ccode_method_module_complete_async (self);
2937
_tmp522_ = vala_method_get_return_type (m);
2938
if (!VALA_IS_VOID_TYPE (_tmp522_)) {
2939
ValaDataType* _tmp523_ = NULL;
2941
_tmp523_ = vala_method_get_return_type (m);
2942
_tmp524_ = vala_data_type_is_real_non_null_struct_type (_tmp523_);
2943
_tmp521_ = !_tmp524_;
2949
_tmp525_ = vala_method_get_coroutine (m);
2950
_tmp520_ = !_tmp525_;
2955
gboolean _tmp526_ = FALSE;
2956
ValaBasicBlock* _tmp527_ = NULL;
2957
_tmp527_ = vala_subroutine_get_return_block ((ValaSubroutine*) m);
2958
if (_tmp527_ != NULL) {
2959
ValaBasicBlock* _tmp528_ = NULL;
2960
ValaList* _tmp529_ = NULL;
2963
_tmp528_ = vala_subroutine_get_return_block ((ValaSubroutine*) m);
2964
_tmp529_ = vala_basic_block_get_predecessors (_tmp528_);
2965
_tmp530_ = _tmp529_;
2966
_tmp531_ = vala_collection_get_size ((ValaCollection*) _tmp530_);
2967
_tmp526_ = _tmp531_ == 0;
2968
_vala_iterable_unref0 (_tmp530_);
2916
_tmp516_ = vala_method_get_return_type (m);
2917
if (!VALA_IS_VOID_TYPE (_tmp516_)) {
2918
ValaDataType* _tmp517_ = NULL;
2920
_tmp517_ = vala_method_get_return_type (m);
2921
_tmp518_ = vala_data_type_is_real_non_null_struct_type (_tmp517_);
2922
_tmp515_ = !_tmp518_;
2928
_tmp519_ = vala_method_get_coroutine (m);
2929
_tmp514_ = !_tmp519_;
2934
gboolean _tmp520_ = FALSE;
2935
ValaBasicBlock* _tmp521_ = NULL;
2936
_tmp521_ = vala_subroutine_get_return_block ((ValaSubroutine*) m);
2937
if (_tmp521_ != NULL) {
2938
ValaBasicBlock* _tmp522_ = NULL;
2939
ValaList* _tmp523_ = NULL;
2942
_tmp522_ = vala_subroutine_get_return_block ((ValaSubroutine*) m);
2943
_tmp523_ = vala_basic_block_get_predecessors (_tmp522_);
2944
_tmp524_ = _tmp523_;
2945
_tmp525_ = vala_collection_get_size ((ValaCollection*) _tmp524_);
2946
_tmp520_ = _tmp525_ == 0;
2947
_vala_iterable_unref0 (_tmp524_);
2973
ValaCCodeFunction* _tmp532_ = NULL;
2974
ValaCCodeIdentifier* _tmp533_ = NULL;
2975
ValaCCodeIdentifier* _tmp534_;
2976
_tmp532_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2977
_tmp533_ = vala_ccode_identifier_new ("result");
2978
_tmp534_ = _tmp533_;
2979
vala_ccode_function_add_return (_tmp532_, (ValaCCodeExpression*) _tmp534_);
2980
_vala_ccode_node_unref0 (_tmp534_);
2952
ValaCCodeFunction* _tmp526_ = NULL;
2953
ValaCCodeIdentifier* _tmp527_ = NULL;
2954
ValaCCodeIdentifier* _tmp528_;
2955
_tmp526_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
2956
_tmp527_ = vala_ccode_identifier_new ("result");
2957
_tmp528_ = _tmp527_;
2958
vala_ccode_function_add_return (_tmp526_, (ValaCCodeExpression*) _tmp528_);
2959
_vala_ccode_node_unref0 (_tmp528_);
2983
2962
if (VALA_IS_CREATION_METHOD (m)) {
2984
ValaTypeSymbol* _tmp535_ = NULL;
2985
gboolean _tmp541_ = FALSE;
2986
gboolean _tmp542_ = FALSE;
2987
gboolean _tmp543_ = FALSE;
2988
gboolean _tmp544_ = FALSE;
2989
ValaTypeSymbol* _tmp545_ = NULL;
2990
ValaTypeSymbol* _tmp588_ = NULL;
2991
_tmp535_ = vala_ccode_base_module_get_current_type_symbol ((ValaCCodeBaseModule*) self);
2992
if (VALA_IS_CLASS (_tmp535_)) {
2993
ValaClass* _tmp536_ = NULL;
2994
ValaObjectType* _tmp537_ = NULL;
2995
ValaDataType* _tmp538_;
2996
_tmp536_ = vala_ccode_base_module_get_current_class ((ValaCCodeBaseModule*) self);
2997
_tmp537_ = vala_object_type_new ((ValaObjectTypeSymbol*) _tmp536_);
2998
_tmp538_ = (ValaDataType*) _tmp537_;
2999
_vala_code_node_unref0 (creturn_type);
3000
creturn_type = _tmp538_;
3002
ValaVoidType* _tmp539_ = NULL;
3003
ValaDataType* _tmp540_;
3004
_tmp539_ = vala_void_type_new (NULL);
3005
_tmp540_ = (ValaDataType*) _tmp539_;
3006
_vala_code_node_unref0 (creturn_type);
3007
creturn_type = _tmp540_;
3009
_tmp545_ = vala_ccode_base_module_get_current_type_symbol ((ValaCCodeBaseModule*) self);
3010
if (VALA_IS_CLASS (_tmp545_)) {
3011
_tmp544_ = ((ValaCCodeBaseModule*) self)->gobject_type != NULL;
3016
ValaClass* _tmp546_ = NULL;
3018
_tmp546_ = vala_ccode_base_module_get_current_class ((ValaCCodeBaseModule*) self);
3019
_tmp547_ = vala_typesymbol_is_subtype_of ((ValaTypeSymbol*) _tmp546_, ((ValaCCodeBaseModule*) self)->gobject_type);
3020
_tmp543_ = _tmp547_;
3025
ValaClass* _tmp548_ = NULL;
3026
ValaList* _tmp549_ = NULL;
3029
_tmp548_ = vala_ccode_base_module_get_current_class ((ValaCCodeBaseModule*) self);
3030
_tmp549_ = vala_object_type_symbol_get_type_parameters ((ValaObjectTypeSymbol*) _tmp548_);
3031
_tmp550_ = _tmp549_;
3032
_tmp551_ = vala_collection_get_size ((ValaCollection*) _tmp550_);
3033
_tmp542_ = _tmp551_ > 0;
3034
_vala_iterable_unref0 (_tmp550_);
3040
_tmp552_ = vala_creation_method_get_chain_up (VALA_CREATION_METHOD (m));
3041
_tmp541_ = !_tmp552_;
3046
ValaCCodeIdentifier* _tmp553_ = NULL;
3047
ValaCCodeIdentifier* _tmp554_;
3048
ValaCCodeIdentifier* _tmp555_ = NULL;
3049
ValaCCodeIdentifier* _tmp556_;
3050
ValaCCodeBinaryExpression* _tmp557_ = NULL;
3051
ValaCCodeBinaryExpression* _tmp558_;
2963
ValaTypeSymbol* _tmp529_ = NULL;
2964
gboolean _tmp535_ = FALSE;
2965
gboolean _tmp536_ = FALSE;
2966
gboolean _tmp537_ = FALSE;
2967
gboolean _tmp538_ = FALSE;
2968
ValaTypeSymbol* _tmp539_ = NULL;
2969
ValaTypeSymbol* _tmp582_ = NULL;
2970
_tmp529_ = vala_ccode_base_module_get_current_type_symbol ((ValaCCodeBaseModule*) self);
2971
if (VALA_IS_CLASS (_tmp529_)) {
2972
ValaClass* _tmp530_ = NULL;
2973
ValaObjectType* _tmp531_ = NULL;
2974
ValaDataType* _tmp532_;
2975
_tmp530_ = vala_ccode_base_module_get_current_class ((ValaCCodeBaseModule*) self);
2976
_tmp531_ = vala_object_type_new ((ValaObjectTypeSymbol*) _tmp530_);
2977
_tmp532_ = (ValaDataType*) _tmp531_;
2978
_vala_code_node_unref0 (creturn_type);
2979
creturn_type = _tmp532_;
2981
ValaVoidType* _tmp533_ = NULL;
2982
ValaDataType* _tmp534_;
2983
_tmp533_ = vala_void_type_new (NULL);
2984
_tmp534_ = (ValaDataType*) _tmp533_;
2985
_vala_code_node_unref0 (creturn_type);
2986
creturn_type = _tmp534_;
2988
_tmp539_ = vala_ccode_base_module_get_current_type_symbol ((ValaCCodeBaseModule*) self);
2989
if (VALA_IS_CLASS (_tmp539_)) {
2990
_tmp538_ = ((ValaCCodeBaseModule*) self)->gobject_type != NULL;
2995
ValaClass* _tmp540_ = NULL;
2997
_tmp540_ = vala_ccode_base_module_get_current_class ((ValaCCodeBaseModule*) self);
2998
_tmp541_ = vala_typesymbol_is_subtype_of ((ValaTypeSymbol*) _tmp540_, ((ValaCCodeBaseModule*) self)->gobject_type);
2999
_tmp537_ = _tmp541_;
3004
ValaClass* _tmp542_ = NULL;
3005
ValaList* _tmp543_ = NULL;
3008
_tmp542_ = vala_ccode_base_module_get_current_class ((ValaCCodeBaseModule*) self);
3009
_tmp543_ = vala_object_type_symbol_get_type_parameters ((ValaObjectTypeSymbol*) _tmp542_);
3010
_tmp544_ = _tmp543_;
3011
_tmp545_ = vala_collection_get_size ((ValaCollection*) _tmp544_);
3012
_tmp536_ = _tmp545_ > 0;
3013
_vala_iterable_unref0 (_tmp544_);
3019
_tmp546_ = vala_creation_method_get_chain_up (VALA_CREATION_METHOD (m));
3020
_tmp535_ = !_tmp546_;
3025
ValaCCodeIdentifier* _tmp547_ = NULL;
3026
ValaCCodeIdentifier* _tmp548_;
3027
ValaCCodeIdentifier* _tmp549_ = NULL;
3028
ValaCCodeIdentifier* _tmp550_;
3029
ValaCCodeBinaryExpression* _tmp551_ = NULL;
3030
ValaCCodeBinaryExpression* _tmp552_;
3052
3031
ValaCCodeBinaryExpression* ccond;
3053
ValaCCodeBlock* _tmp559_ = NULL;
3032
ValaCCodeBlock* _tmp553_ = NULL;
3054
3033
ValaCCodeBlock* cdofreeparam;
3034
ValaCCodeIdentifier* _tmp554_ = NULL;
3035
ValaCCodeIdentifier* _tmp555_;
3036
ValaCCodeUnaryExpression* _tmp556_ = NULL;
3037
ValaCCodeUnaryExpression* _tmp557_;
3038
ValaCCodeExpressionStatement* _tmp558_ = NULL;
3039
ValaCCodeExpressionStatement* _tmp559_;
3055
3040
ValaCCodeIdentifier* _tmp560_ = NULL;
3056
3041
ValaCCodeIdentifier* _tmp561_;
3057
ValaCCodeUnaryExpression* _tmp562_ = NULL;
3058
ValaCCodeUnaryExpression* _tmp563_;
3059
ValaCCodeExpressionStatement* _tmp564_ = NULL;
3060
ValaCCodeExpressionStatement* _tmp565_;
3061
ValaCCodeIdentifier* _tmp566_ = NULL;
3062
ValaCCodeIdentifier* _tmp567_;
3063
ValaCCodeFunctionCall* _tmp568_ = NULL;
3064
ValaCCodeFunctionCall* _tmp569_;
3042
ValaCCodeFunctionCall* _tmp562_ = NULL;
3043
ValaCCodeFunctionCall* _tmp563_;
3065
3044
ValaCCodeFunctionCall* cunsetcall;
3066
ValaCCodeIdentifier* _tmp570_ = NULL;
3067
ValaCCodeIdentifier* _tmp571_;
3068
ValaCCodeMemberAccess* _tmp572_ = NULL;
3069
ValaCCodeMemberAccess* _tmp573_;
3070
ValaCCodeUnaryExpression* _tmp574_ = NULL;
3071
ValaCCodeUnaryExpression* _tmp575_;
3072
ValaCCodeExpressionStatement* _tmp576_ = NULL;
3073
ValaCCodeExpressionStatement* _tmp577_;
3074
ValaCCodeFunction* _tmp578_ = NULL;
3075
ValaCCodeWhileStatement* _tmp579_ = NULL;
3076
ValaCCodeWhileStatement* _tmp580_;
3077
ValaCCodeIdentifier* _tmp581_ = NULL;
3078
ValaCCodeIdentifier* _tmp582_;
3079
ValaCCodeFunctionCall* _tmp583_ = NULL;
3080
ValaCCodeFunctionCall* _tmp584_;
3045
ValaCCodeIdentifier* _tmp564_ = NULL;
3046
ValaCCodeIdentifier* _tmp565_;
3047
ValaCCodeMemberAccess* _tmp566_ = NULL;
3048
ValaCCodeMemberAccess* _tmp567_;
3049
ValaCCodeUnaryExpression* _tmp568_ = NULL;
3050
ValaCCodeUnaryExpression* _tmp569_;
3051
ValaCCodeExpressionStatement* _tmp570_ = NULL;
3052
ValaCCodeExpressionStatement* _tmp571_;
3053
ValaCCodeFunction* _tmp572_ = NULL;
3054
ValaCCodeWhileStatement* _tmp573_ = NULL;
3055
ValaCCodeWhileStatement* _tmp574_;
3056
ValaCCodeIdentifier* _tmp575_ = NULL;
3057
ValaCCodeIdentifier* _tmp576_;
3058
ValaCCodeFunctionCall* _tmp577_ = NULL;
3059
ValaCCodeFunctionCall* _tmp578_;
3081
3060
ValaCCodeFunctionCall* cfreeparams;
3082
ValaCCodeIdentifier* _tmp585_ = NULL;
3083
ValaCCodeIdentifier* _tmp586_;
3084
ValaCCodeFunction* _tmp587_ = NULL;
3085
_tmp553_ = vala_ccode_identifier_new ("__params_it");
3086
_tmp554_ = _tmp553_;
3087
_tmp555_ = vala_ccode_identifier_new ("__params");
3088
_tmp556_ = _tmp555_;
3089
_tmp557_ = vala_ccode_binary_expression_new (VALA_CCODE_BINARY_OPERATOR_GREATER_THAN, (ValaCCodeExpression*) _tmp554_, (ValaCCodeExpression*) _tmp556_);
3090
ccond = (_tmp558_ = _tmp557_, _vala_ccode_node_unref0 (_tmp556_), _vala_ccode_node_unref0 (_tmp554_), _tmp558_);
3091
_tmp559_ = vala_ccode_block_new ();
3092
cdofreeparam = _tmp559_;
3093
_tmp560_ = vala_ccode_identifier_new ("__params_it");
3061
ValaCCodeIdentifier* _tmp579_ = NULL;
3062
ValaCCodeIdentifier* _tmp580_;
3063
ValaCCodeFunction* _tmp581_ = NULL;
3064
_tmp547_ = vala_ccode_identifier_new ("__params_it");
3065
_tmp548_ = _tmp547_;
3066
_tmp549_ = vala_ccode_identifier_new ("__params");
3067
_tmp550_ = _tmp549_;
3068
_tmp551_ = vala_ccode_binary_expression_new (VALA_CCODE_BINARY_OPERATOR_GREATER_THAN, (ValaCCodeExpression*) _tmp548_, (ValaCCodeExpression*) _tmp550_);
3069
ccond = (_tmp552_ = _tmp551_, _vala_ccode_node_unref0 (_tmp550_), _vala_ccode_node_unref0 (_tmp548_), _tmp552_);
3070
_tmp553_ = vala_ccode_block_new ();
3071
cdofreeparam = _tmp553_;
3072
_tmp554_ = vala_ccode_identifier_new ("__params_it");
3073
_tmp555_ = _tmp554_;
3074
_tmp556_ = vala_ccode_unary_expression_new (VALA_CCODE_UNARY_OPERATOR_PREFIX_DECREMENT, (ValaCCodeExpression*) _tmp555_);
3075
_tmp557_ = _tmp556_;
3076
_tmp558_ = vala_ccode_expression_statement_new ((ValaCCodeExpression*) _tmp557_);
3077
_tmp559_ = _tmp558_;
3078
vala_ccode_block_add_statement (cdofreeparam, (ValaCCodeNode*) _tmp559_);
3079
_vala_ccode_node_unref0 (_tmp559_);
3080
_vala_ccode_node_unref0 (_tmp557_);
3081
_vala_ccode_node_unref0 (_tmp555_);
3082
_tmp560_ = vala_ccode_identifier_new ("g_value_unset");
3094
3083
_tmp561_ = _tmp560_;
3095
_tmp562_ = vala_ccode_unary_expression_new (VALA_CCODE_UNARY_OPERATOR_PREFIX_DECREMENT, (ValaCCodeExpression*) _tmp561_);
3096
_tmp563_ = _tmp562_;
3097
_tmp564_ = vala_ccode_expression_statement_new ((ValaCCodeExpression*) _tmp563_);
3084
_tmp562_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp561_);
3085
cunsetcall = (_tmp563_ = _tmp562_, _vala_ccode_node_unref0 (_tmp561_), _tmp563_);
3086
_tmp564_ = vala_ccode_identifier_new ("__params_it");
3098
3087
_tmp565_ = _tmp564_;
3099
vala_ccode_block_add_statement (cdofreeparam, (ValaCCodeNode*) _tmp565_);
3088
_tmp566_ = vala_ccode_member_access_new_pointer ((ValaCCodeExpression*) _tmp565_, "value");
3089
_tmp567_ = _tmp566_;
3090
_tmp568_ = vala_ccode_unary_expression_new (VALA_CCODE_UNARY_OPERATOR_ADDRESS_OF, (ValaCCodeExpression*) _tmp567_);
3091
_tmp569_ = _tmp568_;
3092
vala_ccode_function_call_add_argument (cunsetcall, (ValaCCodeExpression*) _tmp569_);
3093
_vala_ccode_node_unref0 (_tmp569_);
3094
_vala_ccode_node_unref0 (_tmp567_);
3100
3095
_vala_ccode_node_unref0 (_tmp565_);
3101
_vala_ccode_node_unref0 (_tmp563_);
3102
_vala_ccode_node_unref0 (_tmp561_);
3103
_tmp566_ = vala_ccode_identifier_new ("g_value_unset");
3104
_tmp567_ = _tmp566_;
3105
_tmp568_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp567_);
3106
cunsetcall = (_tmp569_ = _tmp568_, _vala_ccode_node_unref0 (_tmp567_), _tmp569_);
3107
_tmp570_ = vala_ccode_identifier_new ("__params_it");
3096
_tmp570_ = vala_ccode_expression_statement_new ((ValaCCodeExpression*) cunsetcall);
3108
3097
_tmp571_ = _tmp570_;
3109
_tmp572_ = vala_ccode_member_access_new_pointer ((ValaCCodeExpression*) _tmp571_, "value");
3110
_tmp573_ = _tmp572_;
3111
_tmp574_ = vala_ccode_unary_expression_new (VALA_CCODE_UNARY_OPERATOR_ADDRESS_OF, (ValaCCodeExpression*) _tmp573_);
3112
_tmp575_ = _tmp574_;
3113
vala_ccode_function_call_add_argument (cunsetcall, (ValaCCodeExpression*) _tmp575_);
3114
_vala_ccode_node_unref0 (_tmp575_);
3115
_vala_ccode_node_unref0 (_tmp573_);
3098
vala_ccode_block_add_statement (cdofreeparam, (ValaCCodeNode*) _tmp571_);
3116
3099
_vala_ccode_node_unref0 (_tmp571_);
3117
_tmp576_ = vala_ccode_expression_statement_new ((ValaCCodeExpression*) cunsetcall);
3118
_tmp577_ = _tmp576_;
3119
vala_ccode_block_add_statement (cdofreeparam, (ValaCCodeNode*) _tmp577_);
3120
_vala_ccode_node_unref0 (_tmp577_);
3121
_tmp578_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
3122
_tmp579_ = vala_ccode_while_statement_new ((ValaCCodeExpression*) ccond, (ValaCCodeStatement*) cdofreeparam);
3100
_tmp572_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
3101
_tmp573_ = vala_ccode_while_statement_new ((ValaCCodeExpression*) ccond, (ValaCCodeStatement*) cdofreeparam);
3102
_tmp574_ = _tmp573_;
3103
vala_ccode_function_add_statement (_tmp572_, (ValaCCodeNode*) _tmp574_);
3104
_vala_ccode_node_unref0 (_tmp574_);
3105
_tmp575_ = vala_ccode_identifier_new ("g_free");
3106
_tmp576_ = _tmp575_;
3107
_tmp577_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp576_);
3108
cfreeparams = (_tmp578_ = _tmp577_, _vala_ccode_node_unref0 (_tmp576_), _tmp578_);
3109
_tmp579_ = vala_ccode_identifier_new ("__params");
3123
3110
_tmp580_ = _tmp579_;
3124
vala_ccode_function_add_statement (_tmp578_, (ValaCCodeNode*) _tmp580_);
3111
vala_ccode_function_call_add_argument (cfreeparams, (ValaCCodeExpression*) _tmp580_);
3125
3112
_vala_ccode_node_unref0 (_tmp580_);
3126
_tmp581_ = vala_ccode_identifier_new ("g_free");
3127
_tmp582_ = _tmp581_;
3128
_tmp583_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp582_);
3129
cfreeparams = (_tmp584_ = _tmp583_, _vala_ccode_node_unref0 (_tmp582_), _tmp584_);
3130
_tmp585_ = vala_ccode_identifier_new ("__params");
3131
_tmp586_ = _tmp585_;
3132
vala_ccode_function_call_add_argument (cfreeparams, (ValaCCodeExpression*) _tmp586_);
3133
_vala_ccode_node_unref0 (_tmp586_);
3134
_tmp587_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
3135
vala_ccode_function_add_expression (_tmp587_, (ValaCCodeExpression*) cfreeparams);
3113
_tmp581_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
3114
vala_ccode_function_add_expression (_tmp581_, (ValaCCodeExpression*) cfreeparams);
3136
3115
_vala_ccode_node_unref0 (cfreeparams);
3137
3116
_vala_ccode_node_unref0 (cunsetcall);
3138
3117
_vala_ccode_node_unref0 (cdofreeparam);
3139
3118
_vala_ccode_node_unref0 (ccond);
3141
_tmp588_ = vala_ccode_base_module_get_current_type_symbol ((ValaCCodeBaseModule*) self);
3142
if (VALA_IS_CLASS (_tmp588_)) {
3143
ValaCCodeIdentifier* _tmp589_ = NULL;
3120
_tmp582_ = vala_ccode_base_module_get_current_type_symbol ((ValaCCodeBaseModule*) self);
3121
if (VALA_IS_CLASS (_tmp582_)) {
3122
ValaCCodeIdentifier* _tmp583_ = NULL;
3144
3123
ValaCCodeExpression* cresult;
3145
gchar* _tmp590_ = NULL;
3148
ValaCCodeFunction* _tmp597_ = NULL;
3149
_tmp589_ = vala_ccode_identifier_new ("self");
3150
cresult = (ValaCCodeExpression*) _tmp589_;
3151
_tmp590_ = vala_ccode_base_module_get_custom_creturn_type ((ValaCCodeBaseModule*) self, m);
3152
_tmp591_ = _tmp590_;
3153
if ((_tmp592_ = _tmp591_ != NULL, _g_free0 (_tmp591_), _tmp592_)) {
3154
gchar* _tmp593_ = NULL;
3156
ValaCCodeCastExpression* _tmp595_ = NULL;
3157
ValaCCodeExpression* _tmp596_;
3158
_tmp593_ = vala_ccode_base_module_get_custom_creturn_type ((ValaCCodeBaseModule*) self, m);
3159
_tmp594_ = _tmp593_;
3160
_tmp595_ = vala_ccode_cast_expression_new (cresult, _tmp594_);
3161
_tmp596_ = (ValaCCodeExpression*) _tmp595_;
3124
gchar* _tmp584_ = NULL;
3127
ValaCCodeFunction* _tmp591_ = NULL;
3128
_tmp583_ = vala_ccode_identifier_new ("self");
3129
cresult = (ValaCCodeExpression*) _tmp583_;
3130
_tmp584_ = vala_ccode_base_module_get_custom_creturn_type ((ValaCCodeBaseModule*) self, m);
3131
_tmp585_ = _tmp584_;
3132
if ((_tmp586_ = _tmp585_ != NULL, _g_free0 (_tmp585_), _tmp586_)) {
3133
gchar* _tmp587_ = NULL;
3135
ValaCCodeCastExpression* _tmp589_ = NULL;
3136
ValaCCodeExpression* _tmp590_;
3137
_tmp587_ = vala_ccode_base_module_get_custom_creturn_type ((ValaCCodeBaseModule*) self, m);
3138
_tmp588_ = _tmp587_;
3139
_tmp589_ = vala_ccode_cast_expression_new (cresult, _tmp588_);
3140
_tmp590_ = (ValaCCodeExpression*) _tmp589_;
3162
3141
_vala_ccode_node_unref0 (cresult);
3164
_g_free0 (_tmp594_);
3143
_g_free0 (_tmp588_);
3166
_tmp597_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
3167
vala_ccode_function_add_return (_tmp597_, cresult);
3145
_tmp591_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
3146
vala_ccode_function_add_return (_tmp591_, cresult);
3168
3147
_vala_ccode_node_unref0 (cresult);
3171
_tmp598_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
3172
vala_ccode_file_add_function (((ValaCCodeBaseModule*) self)->cfile, _tmp598_);
3150
_tmp592_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
3151
vala_ccode_file_add_function (((ValaCCodeBaseModule*) self)->cfile, _tmp592_);
3175
_tmp599_ = vala_method_get_is_abstract (m);
3177
ValaTypeSymbol* _tmp600_ = NULL;
3154
_tmp594_ = vala_method_get_is_abstract (m);
3156
ValaTypeSymbol* _tmp595_ = NULL;
3157
_tmp595_ = vala_ccode_base_module_get_current_type_symbol ((ValaCCodeBaseModule*) self);
3158
_tmp593_ = VALA_IS_CLASS (_tmp595_);
3163
ValaTypeSymbol* _tmp596_ = NULL;
3164
ValaCCodeIdentifier* _tmp597_ = NULL;
3165
ValaCCodeIdentifier* _tmp598_;
3166
ValaCCodeFunctionCall* _tmp599_ = NULL;
3167
ValaCCodeFunctionCall* _tmp600_;
3168
ValaCCodeFunctionCall* type_from_instance_call;
3178
3169
ValaCCodeIdentifier* _tmp601_ = NULL;
3179
3170
ValaCCodeIdentifier* _tmp602_;
3180
ValaCCodeFunctionCall* _tmp603_ = NULL;
3181
ValaCCodeFunctionCall* _tmp604_;
3182
ValaCCodeFunctionCall* type_from_instance_call;
3183
ValaCCodeIdentifier* _tmp605_ = NULL;
3184
ValaCCodeIdentifier* _tmp606_;
3185
ValaCCodeIdentifier* _tmp607_ = NULL;
3186
ValaCCodeIdentifier* _tmp608_;
3187
ValaCCodeFunctionCall* _tmp609_ = NULL;
3188
ValaCCodeFunctionCall* _tmp610_;
3171
ValaCCodeIdentifier* _tmp603_ = NULL;
3172
ValaCCodeIdentifier* _tmp604_;
3173
ValaCCodeFunctionCall* _tmp605_ = NULL;
3174
ValaCCodeFunctionCall* _tmp606_;
3189
3175
ValaCCodeFunctionCall* type_name_call;
3190
gchar* _tmp611_ = NULL;
3192
gchar* _tmp613_ = NULL;
3176
gchar* _tmp607_ = NULL;
3178
gchar* _tmp609_ = NULL;
3194
3180
gchar* error_string;
3195
ValaCCodeIdentifier* _tmp615_ = NULL;
3196
ValaCCodeIdentifier* _tmp616_;
3197
ValaCCodeFunctionCall* _tmp617_ = NULL;
3198
ValaCCodeFunctionCall* _tmp618_;
3181
ValaCCodeIdentifier* _tmp611_ = NULL;
3182
ValaCCodeIdentifier* _tmp612_;
3183
ValaCCodeFunctionCall* _tmp613_ = NULL;
3184
ValaCCodeFunctionCall* _tmp614_;
3199
3185
ValaCCodeFunctionCall* cerrorcall;
3200
ValaCCodeConstant* _tmp619_ = NULL;
3201
ValaCCodeConstant* _tmp620_;
3202
ValaCCodeFunction* _tmp621_ = NULL;
3203
ValaCCodeFunction* _tmp622_ = NULL;
3204
_tmp600_ = vala_ccode_base_module_get_current_type_symbol ((ValaCCodeBaseModule*) self);
3205
vala_ccode_method_module_create_method_type_check_statement (self, m, creturn_type, _tmp600_, TRUE, "self");
3206
_tmp601_ = vala_ccode_identifier_new ("G_TYPE_FROM_INSTANCE");
3186
ValaCCodeConstant* _tmp615_ = NULL;
3187
ValaCCodeConstant* _tmp616_;
3188
ValaCCodeFunction* _tmp617_ = NULL;
3189
ValaCCodeFunction* _tmp618_ = NULL;
3190
_tmp596_ = vala_ccode_base_module_get_current_type_symbol ((ValaCCodeBaseModule*) self);
3191
vala_ccode_method_module_create_method_type_check_statement (self, m, creturn_type, _tmp596_, TRUE, "self");
3192
_tmp597_ = vala_ccode_identifier_new ("G_TYPE_FROM_INSTANCE");
3193
_tmp598_ = _tmp597_;
3194
_tmp599_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp598_);
3195
type_from_instance_call = (_tmp600_ = _tmp599_, _vala_ccode_node_unref0 (_tmp598_), _tmp600_);
3196
_tmp601_ = vala_ccode_identifier_new ("self");
3207
3197
_tmp602_ = _tmp601_;
3208
_tmp603_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp602_);
3209
type_from_instance_call = (_tmp604_ = _tmp603_, _vala_ccode_node_unref0 (_tmp602_), _tmp604_);
3210
_tmp605_ = vala_ccode_identifier_new ("self");
3211
_tmp606_ = _tmp605_;
3212
vala_ccode_function_call_add_argument (type_from_instance_call, (ValaCCodeExpression*) _tmp606_);
3213
_vala_ccode_node_unref0 (_tmp606_);
3214
_tmp607_ = vala_ccode_identifier_new ("g_type_name");
3198
vala_ccode_function_call_add_argument (type_from_instance_call, (ValaCCodeExpression*) _tmp602_);
3199
_vala_ccode_node_unref0 (_tmp602_);
3200
_tmp603_ = vala_ccode_identifier_new ("g_type_name");
3201
_tmp604_ = _tmp603_;
3202
_tmp605_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp604_);
3203
type_name_call = (_tmp606_ = _tmp605_, _vala_ccode_node_unref0 (_tmp604_), _tmp606_);
3204
vala_ccode_function_call_add_argument (type_name_call, (ValaCCodeExpression*) type_from_instance_call);
3205
_tmp607_ = vala_method_get_cname (m);
3215
3206
_tmp608_ = _tmp607_;
3216
_tmp609_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp608_);
3217
type_name_call = (_tmp610_ = _tmp609_, _vala_ccode_node_unref0 (_tmp608_), _tmp610_);
3218
vala_ccode_function_call_add_argument (type_name_call, (ValaCCodeExpression*) type_from_instance_call);
3219
_tmp611_ = vala_method_get_cname (m);
3207
_tmp609_ = g_strdup_printf ("\"Type `%%s' does not implement abstract method `%s'\"", _tmp608_);
3208
error_string = (_tmp610_ = _tmp609_, _g_free0 (_tmp608_), _tmp610_);
3209
_tmp611_ = vala_ccode_identifier_new ("g_critical");
3220
3210
_tmp612_ = _tmp611_;
3221
_tmp613_ = g_strdup_printf ("\"Type `%%s' does not implement abstract method `%s'\"", _tmp612_);
3222
error_string = (_tmp614_ = _tmp613_, _g_free0 (_tmp612_), _tmp614_);
3223
_tmp615_ = vala_ccode_identifier_new ("g_critical");
3211
_tmp613_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp612_);
3212
cerrorcall = (_tmp614_ = _tmp613_, _vala_ccode_node_unref0 (_tmp612_), _tmp614_);
3213
_tmp615_ = vala_ccode_constant_new (error_string);
3224
3214
_tmp616_ = _tmp615_;
3225
_tmp617_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp616_);
3226
cerrorcall = (_tmp618_ = _tmp617_, _vala_ccode_node_unref0 (_tmp616_), _tmp618_);
3227
_tmp619_ = vala_ccode_constant_new (error_string);
3228
_tmp620_ = _tmp619_;
3229
vala_ccode_function_call_add_argument (cerrorcall, (ValaCCodeExpression*) _tmp620_);
3230
_vala_ccode_node_unref0 (_tmp620_);
3215
vala_ccode_function_call_add_argument (cerrorcall, (ValaCCodeExpression*) _tmp616_);
3216
_vala_ccode_node_unref0 (_tmp616_);
3231
3217
vala_ccode_function_call_add_argument (cerrorcall, (ValaCCodeExpression*) type_name_call);
3232
_tmp621_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
3233
vala_ccode_function_add_expression (_tmp621_, (ValaCCodeExpression*) cerrorcall);
3218
_tmp617_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
3219
vala_ccode_function_add_expression (_tmp617_, (ValaCCodeExpression*) cerrorcall);
3234
3220
vala_ccode_base_module_return_default_value ((ValaCCodeBaseModule*) self, creturn_type);
3235
_tmp622_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
3236
vala_ccode_file_add_function (((ValaCCodeBaseModule*) self)->cfile, _tmp622_);
3221
_tmp618_ = vala_ccode_base_module_get_ccode ((ValaCCodeBaseModule*) self);
3222
vala_ccode_file_add_function (((ValaCCodeBaseModule*) self)->cfile, _tmp618_);
3237
3223
_vala_ccode_node_unref0 (cerrorcall);
3238
3224
_g_free0 (error_string);
3239
3225
_vala_ccode_node_unref0 (type_name_call);
3242
3228
((ValaCCodeBaseModule*) self)->in_static_or_class_context = FALSE;
3243
3229
vala_ccode_base_module_pop_context ((ValaCCodeBaseModule*) self);
3244
_tmp626_ = vala_method_get_is_abstract (m);
3249
_tmp627_ = vala_method_get_is_virtual (m);
3250
_tmp625_ = _tmp627_;
3254
_tmp628_ = vala_method_get_coroutine (m);
3255
_tmp624_ = !_tmp628_;
3260
ValaSignal* _tmp629_ = NULL;
3261
_tmp629_ = vala_method_get_signal_reference (m);
3262
_tmp623_ = _tmp629_ == NULL;
3267
ValaHashMap* _tmp630_ = NULL;
3268
ValaHashMap* _tmp631_;
3269
ValaHashMap* _tmp632_ = NULL;
3230
_tmp622_ = vala_method_get_is_abstract (m);
3235
_tmp623_ = vala_method_get_is_virtual (m);
3236
_tmp621_ = _tmp623_;
3240
_tmp624_ = vala_method_get_coroutine (m);
3241
_tmp620_ = !_tmp624_;
3246
ValaSignal* _tmp625_ = NULL;
3247
_tmp625_ = vala_method_get_signal_reference (m);
3248
_tmp619_ = _tmp625_ == NULL;
3253
ValaHashMap* _tmp626_ = NULL;
3254
ValaHashMap* _tmp627_;
3255
ValaHashMap* _tmp628_ = NULL;
3270
3256
ValaHashMap* carg_map;
3271
_tmp630_ = vala_hash_map_new (G_TYPE_INT, NULL, NULL, VALA_TYPE_CCODE_PARAMETER, (GBoxedCopyFunc) vala_ccode_node_ref, vala_ccode_node_unref, g_direct_hash, g_direct_equal, g_direct_equal);
3272
_tmp631_ = _tmp630_;
3257
_tmp626_ = vala_hash_map_new (G_TYPE_INT, NULL, NULL, VALA_TYPE_CCODE_PARAMETER, (GBoxedCopyFunc) vala_ccode_node_ref, vala_ccode_node_unref, g_direct_hash, g_direct_equal, g_direct_equal);
3258
_tmp627_ = _tmp626_;
3273
3259
_vala_map_unref0 (cparam_map);
3274
cparam_map = _tmp631_;
3275
_tmp632_ = vala_hash_map_new (G_TYPE_INT, NULL, NULL, VALA_TYPE_CCODE_EXPRESSION, (GBoxedCopyFunc) vala_ccode_node_ref, vala_ccode_node_unref, g_direct_hash, g_direct_equal, g_direct_equal);
3276
carg_map = _tmp632_;
3260
cparam_map = _tmp627_;
3261
_tmp628_ = vala_hash_map_new (G_TYPE_INT, NULL, NULL, VALA_TYPE_CCODE_EXPRESSION, (GBoxedCopyFunc) vala_ccode_node_ref, vala_ccode_node_unref, g_direct_hash, g_direct_equal, g_direct_equal);
3262
carg_map = _tmp628_;
3277
3263
vala_ccode_method_module_generate_vfunc (self, m, creturn_type, (ValaMap*) cparam_map, (ValaMap*) carg_map, "", 3);
3278
3264
_vala_map_unref0 (carg_map);
3280
_tmp633_ = vala_method_get_entry_point (m);
3282
ValaCCodeFunction* _tmp634_ = NULL;
3266
_tmp629_ = vala_method_get_entry_point (m);
3268
ValaCCodeFunction* _tmp630_ = NULL;
3283
3269
ValaCCodeFunction* cmain;
3284
ValaCCodeLineDirective* _tmp635_ = NULL;
3285
ValaCCodeParameter* _tmp636_ = NULL;
3286
ValaCCodeParameter* _tmp637_;
3287
ValaCCodeParameter* _tmp638_ = NULL;
3288
ValaCCodeParameter* _tmp639_;
3289
ValaCCodeBlock* _tmp640_ = NULL;
3270
ValaCCodeLineDirective* _tmp631_ = NULL;
3271
ValaCCodeParameter* _tmp632_ = NULL;
3272
ValaCCodeParameter* _tmp633_;
3273
ValaCCodeParameter* _tmp634_ = NULL;
3274
ValaCCodeParameter* _tmp635_;
3275
ValaCCodeBlock* _tmp636_ = NULL;
3290
3276
ValaCCodeBlock* main_block;
3291
ValaCodeContext* _tmp641_ = NULL;
3292
ValaProfile _tmp642_;
3293
const gchar* _tmp672_ = NULL;
3294
ValaCCodeIdentifier* _tmp673_ = NULL;
3295
ValaCCodeIdentifier* _tmp674_;
3296
ValaCCodeFunctionCall* _tmp675_ = NULL;
3297
ValaCCodeFunctionCall* _tmp676_;
3277
ValaCodeContext* _tmp637_ = NULL;
3278
ValaProfile _tmp638_;
3279
const gchar* _tmp668_ = NULL;
3280
ValaCCodeIdentifier* _tmp669_ = NULL;
3281
ValaCCodeIdentifier* _tmp670_;
3282
ValaCCodeFunctionCall* _tmp671_ = NULL;
3283
ValaCCodeFunctionCall* _tmp672_;
3298
3284
ValaCCodeFunctionCall* main_call;
3299
ValaList* _tmp677_ = NULL;
3303
ValaDataType* _tmp685_ = NULL;
3304
_tmp634_ = vala_ccode_function_new ("main", "int");
3306
_tmp635_ = vala_ccode_node_get_line ((ValaCCodeNode*) function);
3307
vala_ccode_node_set_line ((ValaCCodeNode*) cmain, _tmp635_);
3308
_tmp636_ = vala_ccode_parameter_new ("argc", "int");
3309
_tmp637_ = _tmp636_;
3310
vala_ccode_function_add_parameter (cmain, _tmp637_);
3311
_vala_ccode_node_unref0 (_tmp637_);
3312
_tmp638_ = vala_ccode_parameter_new ("argv", "char **");
3313
_tmp639_ = _tmp638_;
3314
vala_ccode_function_add_parameter (cmain, _tmp639_);
3315
_vala_ccode_node_unref0 (_tmp639_);
3316
_tmp640_ = vala_ccode_block_new ();
3317
main_block = _tmp640_;
3318
_tmp641_ = vala_ccode_base_module_get_context ((ValaCCodeBaseModule*) self);
3319
_tmp642_ = vala_code_context_get_profile (_tmp641_);
3320
if (_tmp642_ == VALA_PROFILE_GOBJECT) {
3321
ValaCodeContext* _tmp643_ = NULL;
3323
ValaCodeContext* _tmp654_ = NULL;
3325
ValaCCodeIdentifier* _tmp665_ = NULL;
3326
ValaCCodeIdentifier* _tmp666_;
3327
ValaCCodeFunctionCall* _tmp667_ = NULL;
3328
ValaCCodeFunctionCall* _tmp668_;
3329
ValaCCodeExpressionStatement* _tmp669_ = NULL;
3330
ValaCCodeExpressionStatement* _tmp670_;
3285
ValaList* _tmp673_ = NULL;
3289
ValaDataType* _tmp681_ = NULL;
3290
_tmp630_ = vala_ccode_function_new ("main", "int");
3292
_tmp631_ = vala_ccode_node_get_line ((ValaCCodeNode*) function);
3293
vala_ccode_node_set_line ((ValaCCodeNode*) cmain, _tmp631_);
3294
_tmp632_ = vala_ccode_parameter_new ("argc", "int");
3295
_tmp633_ = _tmp632_;
3296
vala_ccode_function_add_parameter (cmain, _tmp633_);
3297
_vala_ccode_node_unref0 (_tmp633_);
3298
_tmp634_ = vala_ccode_parameter_new ("argv", "char **");
3299
_tmp635_ = _tmp634_;
3300
vala_ccode_function_add_parameter (cmain, _tmp635_);
3301
_vala_ccode_node_unref0 (_tmp635_);
3302
_tmp636_ = vala_ccode_block_new ();
3303
main_block = _tmp636_;
3304
_tmp637_ = vala_ccode_base_module_get_context ((ValaCCodeBaseModule*) self);
3305
_tmp638_ = vala_code_context_get_profile (_tmp637_);
3306
if (_tmp638_ == VALA_PROFILE_GOBJECT) {
3307
ValaCodeContext* _tmp639_ = NULL;
3309
ValaCodeContext* _tmp650_ = NULL;
3311
ValaCCodeIdentifier* _tmp661_ = NULL;
3312
ValaCCodeIdentifier* _tmp662_;
3313
ValaCCodeFunctionCall* _tmp663_ = NULL;
3314
ValaCCodeFunctionCall* _tmp664_;
3315
ValaCCodeExpressionStatement* _tmp665_ = NULL;
3316
ValaCCodeExpressionStatement* _tmp666_;
3331
3317
ValaCCodeExpressionStatement* type_init_call;
3332
ValaCCodeLineDirective* _tmp671_ = NULL;
3333
_tmp643_ = vala_ccode_base_module_get_context ((ValaCCodeBaseModule*) self);
3334
_tmp644_ = vala_code_context_get_mem_profiler (_tmp643_);
3336
ValaCCodeIdentifier* _tmp645_ = NULL;
3337
ValaCCodeIdentifier* _tmp646_;
3338
ValaCCodeFunctionCall* _tmp647_ = NULL;
3339
ValaCCodeFunctionCall* _tmp648_;
3318
ValaCCodeLineDirective* _tmp667_ = NULL;
3319
_tmp639_ = vala_ccode_base_module_get_context ((ValaCCodeBaseModule*) self);
3320
_tmp640_ = vala_code_context_get_mem_profiler (_tmp639_);
3322
ValaCCodeIdentifier* _tmp641_ = NULL;
3323
ValaCCodeIdentifier* _tmp642_;
3324
ValaCCodeFunctionCall* _tmp643_ = NULL;
3325
ValaCCodeFunctionCall* _tmp644_;
3340
3326
ValaCCodeFunctionCall* mem_profiler_init_call;
3341
ValaCCodeLineDirective* _tmp649_ = NULL;
3342
ValaCCodeConstant* _tmp650_ = NULL;
3343
ValaCCodeConstant* _tmp651_;
3344
ValaCCodeExpressionStatement* _tmp652_ = NULL;
3345
ValaCCodeExpressionStatement* _tmp653_;
3346
_tmp645_ = vala_ccode_identifier_new ("g_mem_set_vtable");
3347
_tmp646_ = _tmp645_;
3348
_tmp647_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp646_);
3349
mem_profiler_init_call = (_tmp648_ = _tmp647_, _vala_ccode_node_unref0 (_tmp646_), _tmp648_);
3350
_tmp649_ = vala_ccode_node_get_line ((ValaCCodeNode*) cmain);
3351
vala_ccode_node_set_line ((ValaCCodeNode*) mem_profiler_init_call, _tmp649_);
3352
_tmp650_ = vala_ccode_constant_new ("glib_mem_profiler_table");
3353
_tmp651_ = _tmp650_;
3354
vala_ccode_function_call_add_argument (mem_profiler_init_call, (ValaCCodeExpression*) _tmp651_);
3355
_vala_ccode_node_unref0 (_tmp651_);
3356
_tmp652_ = vala_ccode_expression_statement_new ((ValaCCodeExpression*) mem_profiler_init_call);
3357
_tmp653_ = _tmp652_;
3358
vala_ccode_block_add_statement (main_block, (ValaCCodeNode*) _tmp653_);
3359
_vala_ccode_node_unref0 (_tmp653_);
3327
ValaCCodeLineDirective* _tmp645_ = NULL;
3328
ValaCCodeConstant* _tmp646_ = NULL;
3329
ValaCCodeConstant* _tmp647_;
3330
ValaCCodeExpressionStatement* _tmp648_ = NULL;
3331
ValaCCodeExpressionStatement* _tmp649_;
3332
_tmp641_ = vala_ccode_identifier_new ("g_mem_set_vtable");
3333
_tmp642_ = _tmp641_;
3334
_tmp643_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp642_);
3335
mem_profiler_init_call = (_tmp644_ = _tmp643_, _vala_ccode_node_unref0 (_tmp642_), _tmp644_);
3336
_tmp645_ = vala_ccode_node_get_line ((ValaCCodeNode*) cmain);
3337
vala_ccode_node_set_line ((ValaCCodeNode*) mem_profiler_init_call, _tmp645_);
3338
_tmp646_ = vala_ccode_constant_new ("glib_mem_profiler_table");
3339
_tmp647_ = _tmp646_;
3340
vala_ccode_function_call_add_argument (mem_profiler_init_call, (ValaCCodeExpression*) _tmp647_);
3341
_vala_ccode_node_unref0 (_tmp647_);
3342
_tmp648_ = vala_ccode_expression_statement_new ((ValaCCodeExpression*) mem_profiler_init_call);
3343
_tmp649_ = _tmp648_;
3344
vala_ccode_block_add_statement (main_block, (ValaCCodeNode*) _tmp649_);
3345
_vala_ccode_node_unref0 (_tmp649_);
3360
3346
_vala_ccode_node_unref0 (mem_profiler_init_call);
3362
_tmp654_ = vala_ccode_base_module_get_context ((ValaCCodeBaseModule*) self);
3363
_tmp655_ = vala_code_context_get_thread (_tmp654_);
3365
ValaCCodeIdentifier* _tmp656_ = NULL;
3366
ValaCCodeIdentifier* _tmp657_;
3367
ValaCCodeFunctionCall* _tmp658_ = NULL;
3368
ValaCCodeFunctionCall* _tmp659_;
3348
_tmp650_ = vala_ccode_base_module_get_context ((ValaCCodeBaseModule*) self);
3349
_tmp651_ = vala_code_context_get_thread (_tmp650_);
3351
ValaCCodeIdentifier* _tmp652_ = NULL;
3352
ValaCCodeIdentifier* _tmp653_;
3353
ValaCCodeFunctionCall* _tmp654_ = NULL;
3354
ValaCCodeFunctionCall* _tmp655_;
3369
3355
ValaCCodeFunctionCall* thread_init_call;
3370
ValaCCodeLineDirective* _tmp660_ = NULL;
3371
ValaCCodeConstant* _tmp661_ = NULL;
3372
ValaCCodeConstant* _tmp662_;
3373
ValaCCodeExpressionStatement* _tmp663_ = NULL;
3374
ValaCCodeExpressionStatement* _tmp664_;
3375
_tmp656_ = vala_ccode_identifier_new ("g_thread_init");
3376
_tmp657_ = _tmp656_;
3377
_tmp658_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp657_);
3378
thread_init_call = (_tmp659_ = _tmp658_, _vala_ccode_node_unref0 (_tmp657_), _tmp659_);
3379
_tmp660_ = vala_ccode_node_get_line ((ValaCCodeNode*) cmain);
3380
vala_ccode_node_set_line ((ValaCCodeNode*) thread_init_call, _tmp660_);
3381
_tmp661_ = vala_ccode_constant_new ("NULL");
3382
_tmp662_ = _tmp661_;
3383
vala_ccode_function_call_add_argument (thread_init_call, (ValaCCodeExpression*) _tmp662_);
3384
_vala_ccode_node_unref0 (_tmp662_);
3385
_tmp663_ = vala_ccode_expression_statement_new ((ValaCCodeExpression*) thread_init_call);
3386
_tmp664_ = _tmp663_;
3387
vala_ccode_block_add_statement (main_block, (ValaCCodeNode*) _tmp664_);
3388
_vala_ccode_node_unref0 (_tmp664_);
3356
ValaCCodeLineDirective* _tmp656_ = NULL;
3357
ValaCCodeConstant* _tmp657_ = NULL;
3358
ValaCCodeConstant* _tmp658_;
3359
ValaCCodeExpressionStatement* _tmp659_ = NULL;
3360
ValaCCodeExpressionStatement* _tmp660_;
3361
_tmp652_ = vala_ccode_identifier_new ("g_thread_init");
3362
_tmp653_ = _tmp652_;
3363
_tmp654_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp653_);
3364
thread_init_call = (_tmp655_ = _tmp654_, _vala_ccode_node_unref0 (_tmp653_), _tmp655_);
3365
_tmp656_ = vala_ccode_node_get_line ((ValaCCodeNode*) cmain);
3366
vala_ccode_node_set_line ((ValaCCodeNode*) thread_init_call, _tmp656_);
3367
_tmp657_ = vala_ccode_constant_new ("NULL");
3368
_tmp658_ = _tmp657_;
3369
vala_ccode_function_call_add_argument (thread_init_call, (ValaCCodeExpression*) _tmp658_);
3370
_vala_ccode_node_unref0 (_tmp658_);
3371
_tmp659_ = vala_ccode_expression_statement_new ((ValaCCodeExpression*) thread_init_call);
3372
_tmp660_ = _tmp659_;
3373
vala_ccode_block_add_statement (main_block, (ValaCCodeNode*) _tmp660_);
3374
_vala_ccode_node_unref0 (_tmp660_);
3389
3375
_vala_ccode_node_unref0 (thread_init_call);
3391
_tmp665_ = vala_ccode_identifier_new ("g_type_init");
3392
_tmp666_ = _tmp665_;
3393
_tmp667_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp666_);
3394
_tmp668_ = _tmp667_;
3395
_tmp669_ = vala_ccode_expression_statement_new ((ValaCCodeExpression*) _tmp668_);
3396
type_init_call = (_tmp670_ = _tmp669_, _vala_ccode_node_unref0 (_tmp668_), _vala_ccode_node_unref0 (_tmp666_), _tmp670_);
3397
_tmp671_ = vala_ccode_node_get_line ((ValaCCodeNode*) cmain);
3398
vala_ccode_node_set_line ((ValaCCodeNode*) type_init_call, _tmp671_);
3377
_tmp661_ = vala_ccode_identifier_new ("g_type_init");
3378
_tmp662_ = _tmp661_;
3379
_tmp663_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp662_);
3380
_tmp664_ = _tmp663_;
3381
_tmp665_ = vala_ccode_expression_statement_new ((ValaCCodeExpression*) _tmp664_);
3382
type_init_call = (_tmp666_ = _tmp665_, _vala_ccode_node_unref0 (_tmp664_), _vala_ccode_node_unref0 (_tmp662_), _tmp666_);
3383
_tmp667_ = vala_ccode_node_get_line ((ValaCCodeNode*) cmain);
3384
vala_ccode_node_set_line ((ValaCCodeNode*) type_init_call, _tmp667_);
3399
3385
vala_ccode_block_add_statement (main_block, (ValaCCodeNode*) type_init_call);
3400
3386
_vala_ccode_node_unref0 (type_init_call);
3402
_tmp672_ = vala_ccode_function_get_name (function);
3403
_tmp673_ = vala_ccode_identifier_new (_tmp672_);
3388
_tmp668_ = vala_ccode_function_get_name (function);
3389
_tmp669_ = vala_ccode_identifier_new (_tmp668_);
3390
_tmp670_ = _tmp669_;
3391
_tmp671_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp670_);
3392
main_call = (_tmp672_ = _tmp671_, _vala_ccode_node_unref0 (_tmp670_), _tmp672_);
3393
_tmp673_ = vala_method_get_parameters (m);
3404
3394
_tmp674_ = _tmp673_;
3405
_tmp675_ = vala_ccode_function_call_new ((ValaCCodeExpression*) _tmp674_);
3406
main_call = (_tmp676_ = _tmp675_, _vala_ccode_node_unref0 (_tmp674_), _tmp676_);
3407
_tmp677_ = vala_method_get_parameters (m);
3408
_tmp678_ = _tmp677_;
3409
_tmp679_ = vala_collection_get_size ((ValaCollection*) _tmp678_);
3410
if ((_tmp680_ = _tmp679_ == 1, _vala_iterable_unref0 (_tmp678_), _tmp680_)) {
3411
ValaCCodeIdentifier* _tmp681_ = NULL;
3412
ValaCCodeIdentifier* _tmp682_;
3413
ValaCCodeIdentifier* _tmp683_ = NULL;
3414
ValaCCodeIdentifier* _tmp684_;
3415
_tmp681_ = vala_ccode_identifier_new ("argv");
3416
_tmp682_ = _tmp681_;
3417
vala_ccode_function_call_add_argument (main_call, (ValaCCodeExpression*) _tmp682_);
3418
_vala_ccode_node_unref0 (_tmp682_);
3419
_tmp683_ = vala_ccode_identifier_new ("argc");
3420
_tmp684_ = _tmp683_;
3421
vala_ccode_function_call_add_argument (main_call, (ValaCCodeExpression*) _tmp684_);
3422
_vala_ccode_node_unref0 (_tmp684_);
3395
_tmp675_ = vala_collection_get_size ((ValaCollection*) _tmp674_);
3396
if ((_tmp676_ = _tmp675_ == 1, _vala_iterable_unref0 (_tmp674_), _tmp676_)) {
3397
ValaCCodeIdentifier* _tmp677_ = NULL;
3398
ValaCCodeIdentifier* _tmp678_;
3399
ValaCCodeIdentifier* _tmp679_ = NULL;
3400
ValaCCodeIdentifier* _tmp680_;
3401
_tmp677_ = vala_ccode_identifier_new ("argv");
3402
_tmp678_ = _tmp677_;
3403
vala_ccode_function_call_add_argument (main_call, (ValaCCodeExpression*) _tmp678_);
3404
_vala_ccode_node_unref0 (_tmp678_);
3405
_tmp679_ = vala_ccode_identifier_new ("argc");
3406
_tmp680_ = _tmp679_;
3407
vala_ccode_function_call_add_argument (main_call, (ValaCCodeExpression*) _tmp680_);
3408
_vala_ccode_node_unref0 (_tmp680_);
3424
_tmp685_ = vala_method_get_return_type (m);
3425
if (VALA_IS_VOID_TYPE (_tmp685_)) {
3426
ValaCCodeExpressionStatement* _tmp686_ = NULL;
3410
_tmp681_ = vala_method_get_return_type (m);
3411
if (VALA_IS_VOID_TYPE (_tmp681_)) {
3412
ValaCCodeExpressionStatement* _tmp682_ = NULL;
3427
3413
ValaCCodeExpressionStatement* main_stmt;
3428
ValaCCodeLineDirective* _tmp687_ = NULL;
3429
ValaCCodeConstant* _tmp688_ = NULL;
3430
ValaCCodeConstant* _tmp689_;
3431
ValaCCodeReturnStatement* _tmp690_ = NULL;
3432
ValaCCodeReturnStatement* _tmp691_;
3414
ValaCCodeLineDirective* _tmp683_ = NULL;
3415
ValaCCodeConstant* _tmp684_ = NULL;
3416
ValaCCodeConstant* _tmp685_;
3417
ValaCCodeReturnStatement* _tmp686_ = NULL;
3418
ValaCCodeReturnStatement* _tmp687_;
3433
3419
ValaCCodeReturnStatement* ret_stmt;
3434
ValaCCodeLineDirective* _tmp692_ = NULL;
3435
_tmp686_ = vala_ccode_expression_statement_new ((ValaCCodeExpression*) main_call);
3436
main_stmt = _tmp686_;
3437
_tmp687_ = vala_ccode_node_get_line ((ValaCCodeNode*) cmain);
3438
vala_ccode_node_set_line ((ValaCCodeNode*) main_stmt, _tmp687_);
3420
ValaCCodeLineDirective* _tmp688_ = NULL;
3421
_tmp682_ = vala_ccode_expression_statement_new ((ValaCCodeExpression*) main_call);
3422
main_stmt = _tmp682_;
3423
_tmp683_ = vala_ccode_node_get_line ((ValaCCodeNode*) cmain);
3424
vala_ccode_node_set_line ((ValaCCodeNode*) main_stmt, _tmp683_);
3439
3425
vala_ccode_block_add_statement (main_block, (ValaCCodeNode*) main_stmt);
3440
_tmp688_ = vala_ccode_constant_new ("0");
3441
_tmp689_ = _tmp688_;
3442
_tmp690_ = vala_ccode_return_statement_new ((ValaCCodeExpression*) _tmp689_);
3443
ret_stmt = (_tmp691_ = _tmp690_, _vala_ccode_node_unref0 (_tmp689_), _tmp691_);
3444
_tmp692_ = vala_ccode_node_get_line ((ValaCCodeNode*) cmain);
3445
vala_ccode_node_set_line ((ValaCCodeNode*) ret_stmt, _tmp692_);
3426
_tmp684_ = vala_ccode_constant_new ("0");
3427
_tmp685_ = _tmp684_;
3428
_tmp686_ = vala_ccode_return_statement_new ((ValaCCodeExpression*) _tmp685_);
3429
ret_stmt = (_tmp687_ = _tmp686_, _vala_ccode_node_unref0 (_tmp685_), _tmp687_);
3430
_tmp688_ = vala_ccode_node_get_line ((ValaCCodeNode*) cmain);
3431
vala_ccode_node_set_line ((ValaCCodeNode*) ret_stmt, _tmp688_);
3446
3432
vala_ccode_block_add_statement (main_block, (ValaCCodeNode*) ret_stmt);
3447
3433
_vala_ccode_node_unref0 (ret_stmt);
3448
3434
_vala_ccode_node_unref0 (main_stmt);
3450
ValaCCodeReturnStatement* _tmp693_ = NULL;
3436
ValaCCodeReturnStatement* _tmp689_ = NULL;
3451
3437
ValaCCodeReturnStatement* main_stmt;
3452
ValaCCodeLineDirective* _tmp694_ = NULL;
3453
_tmp693_ = vala_ccode_return_statement_new ((ValaCCodeExpression*) main_call);
3454
main_stmt = _tmp693_;
3455
_tmp694_ = vala_ccode_node_get_line ((ValaCCodeNode*) cmain);
3456
vala_ccode_node_set_line ((ValaCCodeNode*) main_stmt, _tmp694_);
3438
ValaCCodeLineDirective* _tmp690_ = NULL;
3439
_tmp689_ = vala_ccode_return_statement_new ((ValaCCodeExpression*) main_call);
3440
main_stmt = _tmp689_;
3441
_tmp690_ = vala_ccode_node_get_line ((ValaCCodeNode*) cmain);
3442
vala_ccode_node_set_line ((ValaCCodeNode*) main_stmt, _tmp690_);
3457
3443
vala_ccode_block_add_statement (main_block, (ValaCCodeNode*) main_stmt);
3458
3444
_vala_ccode_node_unref0 (main_stmt);